我使用以下代码在缩放级别显示单个标记,但它不会在地图上居中标记。只会显示一个标记:
LatLng latLng = new LatLng(Latitude, Longitude);
cameraUpdate = CameraUpdateFactory.newLatLngZoom(latLng, 11.0f);
此代码将使其居中,但它不提供任何缩放:
LatLngBounds bounds = latLngBuilder.build();
cameraUpdate = CameraUpdateFactory.newLatLngBounds(bounds, 30);
我需要居中和缩放。
答案 0 :(得分:26)
尝试以下
LatLng coordinate = new LatLng(Latitude, Latitude);
CameraUpdate yourLocation = CameraUpdateFactory.newLatLngZoom(coordinate, 11.0f);
map.animateCamera(yourLocation);
你也可以这样做(更清洁)
CameraPosition cameraPosition = new CameraPosition.Builder()
.target(Latitude, Latitude) // Center Set
.zoom(11.0f) // Zoom
.bearing(90) // Orientation of the camera to east
.tilt(30) // Tilt of the camera to 30 degrees
.build(); // Creates a CameraPosition from the builder
map.animateCamera(CameraUpdateFactory.newCameraPosition(cameraPosition));
来自https://developers.google.com/maps/documentation/android/views?hl=fr-FR#moving_the_camera
答案 1 :(得分:9)
缩放的正确值介于2.0和22.00之间。
在此之后你要添加这一行
GoogleMap mMap;
mMap.moveCamera(CameraUpdateFactory.newLatLngBounds(latlng, 10));
关于缩放,您可以从文档中阅读 zoom:所需的缩放级别,范围为2.0到21.0。低于此范围的值设置为2.0,高于此值的值设置为21.0。增加值以放大。并非所有区域都具有最大缩放级别的图块。
您可以在http://developer.android.com/reference/com/google/android/gms/maps/CameraUpdateFactory.html
上查看此内容答案 2 :(得分:3)
这是因为您需要将相机移动到您创建的CameraUpdateFactory
,如下所示:
LatLng latLng = new LatLng(Latitude, Longitude);
map.animateCamera(CameraUpdateFactory.newLatLng(latLng, 11);
如果您不想要动画,那么您可以使用:
map.moveCamera(CameraUpdateFactory.newLatLng(latLng, 11);