限制谷歌地图上的图标数量取决于缩放距离

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了限制谷歌地图上的图标数量取决于缩放距离相关的知识,希望对你有一定的参考价值。

目前使用此代码

ArrayList<MarkerData> markersArray = new ArrayList<MarkerData>();

for(int i = 0 ; i < markersArray.size() ; i++) {

    createMarker(markersArray.get(i).getLatitude(), markersArray.get(i).getLongitude(), markersArray.get(i).getTitle(), markersArray.get(i).getSnippet(), markersArray.get(i).getIconResID());
}


protected Marker createMarker(double latitude, double longitude, String title, String snippet, int iconResID) {

    return googleMap.addMarker(new MarkerOptions()
            .position(new LatLng(latitude, longitude))
            .anchor(0.5f, 0.5f)
            .title(title)
            .snippet(snippet)
            .icon(BitmapDescriptorFactory.fromResource(iconResID)));
}

我没有问题,但我的问题是,如果我在一个城市中有50个标记,所有的图标都在彼此之上。

是否可以限制地图缩小时显示的图标数量?或者更好的练习

答案

您可以添加侦听器以在更新时检查缩放并隐藏所需的标记

googleMap.setOnCameraChangeListener(new OnCameraChangeListener() {

private float currentZoom = mMap.zoom;

@Override
public void onCameraChange(CameraPosition newPosition) {
    if (newPosition.zoom < currentZoom){
        // remove a particular marker
        yourMarker.remove();
       // or remove all the markers
       googleMap.clear();
    }
}
});

以上是关于限制谷歌地图上的图标数量取决于缩放距离的主要内容,如果未能解决你的问题,请参考以下文章

谷歌地图 imageMapType 崩溃 iOS Safari

如何在Android的谷歌地图片段中更改默认的蓝色圆形位置图标?

如何在滚动视图中设置谷歌地图片段

谷歌地图怎么测距离?

如何在android中根据谷歌地图不同的缩放级别调整谷歌地图标记的大小

如何在谷歌地图上放置图标标记,图标数量是不是有配额?