如何在安卓设备上动态设置谷歌地图的缩放级别?

3
面临一个问题,在安卓谷歌地图中设置动态缩放级别。类似于在地图应用程序 (安卓系统的应用程序) 中进行这样的操作。请参考下面的图片。我使用了以下地图方法:
mGoogleMap.moveCamera(CameraUpdateFactory.newLatLngZoom(START_POINT, 50)); mGoogleMap.animateCamera(CameraUpdateFactory.zoomTo(14.0f));
其中,moveCamera()方法通过指定起始点和初始缩放比例来移动相机,而animateCamera()方法则可以实现缩放效果。

mGoogleMap.moveCamera(CameraUpdateFactory.newLatLngZoom(START_POINT, 50)); mGoogleMap.animateCamera(CameraUpdateFactory.zoomTo(14.0f)); - Hitesh Dhamshaniya
你的问题下面有一个神奇的按钮,叫做“编辑”。 - Raptor
1个回答

3
请使用以下代码:
mGoogleMap.animateCamera(CameraUpdateFactory.zoomTo(17),200, null);

这里的17是缩放级别,您可以更改它。

或者尝试以下代码以涵盖所有点:

//Calculate the markers to get their position
LatLngBounds.Builder b = new LatLngBounds.Builder();
for (Marker m : markers) {
    b.include(m.getPosition());
}
LatLngBounds bounds = b.build();
//Change the padding as per needed
CameraUpdate cu = CameraUpdateFactory.newLatLngBounds(bounds, 25,25,5);
mMap.animateCamera(cu);

感谢您的评论,但对于所有搜索结果来说,它将是静态的。我想要像谷歌地图应用程序一样,在内置应用程序中提供不同缩放级别的搜索条件,例如城市、区域或州。 - Hitesh Dhamshaniya
谢谢,你能否简要解释一下下面的代码行 CameraUpdateFactory.newLatLngBounds(bounds, 25,25,5); - Hitesh Dhamshaniya
这是链接:https://developer.android.com/reference/com/google/android/gms/maps/CameraUpdateFactory.html#newLatLngBounds(com.google.android.gms.maps.model.LatLngBounds, int) - Yashdeep Patel

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接