如何显示标记,距地图一定距离

时间:2017-05-02 05:44:28

标签: android google-maps google-maps-api-3 google-maps-markers distance

在谷歌地图中,​​默认情况下会从最远距离显示标记 像这样:

ph1

我正在寻找的是仅在某个距离显示标记,例如在此距离处: enter image description here

1 个答案:

答案 0 :(得分:1)

您可以创建List<Marker> markers来存储您创建的标记:

private List<Marker> markers = new ArrayList<>();

并检查是否需要在每次相机更改时看到它们:

googleMap.setOnCameraIdleListener(new GoogleMap.OnCameraIdleListener() {
    @Override
    public void onCameraIdle() {
        for (Marker marker : markers) {
            if (googleMap.getCameraPosition().zoom > 18) {
                marker.setVisible(true);
            } else {
                marker.setVisible(false);
            }
        }
    }
});

//Add some markers:
markers.add(googleMap.addMarker(new MarkerOptions().position(new LatLng(-1.052375, -78.128102))));
markers.add(googleMap.addMarker(new MarkerOptions().position(new LatLng(-1.054864, -78.153422))));
markers.add(googleMap.addMarker(new MarkerOptions().position(new LatLng(-1.072542, -78.102010))));