在Android中居中地图标记

And*_*Dev 11 android google-maps

我使用以下代码在缩放级别显示单个标记,但它不会在地图上居中标记.只会显示一个标记:

LatLng latLng = new LatLng(Latitude, Longitude);
cameraUpdate = CameraUpdateFactory.newLatLngZoom(latLng, 11.0f);
Run Code Online (Sandbox Code Playgroud)

此代码将使其居中,但它不提供任何缩放:

LatLngBounds bounds = latLngBuilder.build();
cameraUpdate = CameraUpdateFactory.newLatLngBounds(bounds, 30);
Run Code Online (Sandbox Code Playgroud)

我需要居中和缩放.

eMi*_*eMi 26

请尝试以下方法

LatLng coordinate = new LatLng(Latitude, Latitude);
CameraUpdate yourLocation = CameraUpdateFactory.newLatLngZoom(coordinate, 11.0f);
map.animateCamera(yourLocation);
Run Code Online (Sandbox Code Playgroud)

你也可以这样做(更清洁的方式)

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));
Run Code Online (Sandbox Code Playgroud)

来自https://developers.google.com/maps/documentation/android/views?hl=fr-FR#moving_the_camera

  • 不再是,提供了另一种更清洁的方式 (3认同)

小智 9

缩放的正确值介于2.0和22.00之间.

在此之后你要添加这一行

GoogleMap mMap;
mMap.moveCamera(CameraUpdateFactory.newLatLngBounds(latlng, 10));
Run Code Online (Sandbox Code Playgroud)

关于缩放,您可以从文档缩放中读取:所需的缩放级别,范围为2.0到21.0.低于此范围的值设置为2.0,高于此值的值设置为21.0.增加值以放大.并非所有区域都具有最大缩放级别的图块.

您可以在http://developer.android.com/reference/com/google/android/gms/maps/CameraUpdateFactory.html上查看此内容