如何在google地图中仅显示特定区域/区域的android api v2?。所有功能都必须在该区域中可用,如缩放,拖动等。 所有其他区域必须裁剪或隐形。那可能吗??? 我正在使用eclipse.help我
答案 0 :(得分:0)
要仅显示特定区域或区域,您可以使用多边形。
多边形对象与Polyline对象类似,它们由有序序列中的一系列坐标组成。但是,多边形不是开放式的,而是设计用于在内部填充的情况下定义闭环内的区域。
您可以使用与添加折线相同的方式将多边形添加到地图中。首先创建一个PolygonOptions对象并为其添加一些点。这些点将形成多边形的轮廓。然后,通过调用将返回Polygon对象的GoogleMap.addPolygon(PolygonOptions)将多边形添加到地图中。
访问此page,了解如何使用Polygon。
答案 1 :(得分:0)
@Override
public void onMapReady(GoogleMap googleMap) {
mMap = googleMap;
//get latlong for corners for specified place
LatLng one = new LatLng(27.700769, 85.300140);
LatLng two = new LatLng(27.800769, 85.400140);
LatLngBounds.Builder builder = new LatLngBounds.Builder();
//add them to builder
builder.include(one);
builder.include(two);
LatLngBounds bounds = builder.build();
//get width and height to current display screen
int width = getResources().getDisplayMetrics().widthPixels;
int height = getResources().getDisplayMetrics().heightPixels;
// 20% padding
int padding = (int) (width * 0.20);
//set latlong bounds
mMap.setLatLngBoundsForCameraTarget(bounds);
//move camera to fill the bound to screen
mMap.moveCamera(CameraUpdateFactory.newLatLngBounds(bounds, width, height, padding));
//set zoom to level to current so that you won't be able to zoom out viz. move outside bounds
mMap.setMinZoomPreference(mMap.getCameraPosition().zoom);
}