谷歌地图可编辑/可拖动的多边形

时间:2017-10-30 12:13:23

标签: android google-maps polygon

我试图通过拖动顶点来了解如何编辑 polygon JavaScript API中的多边形有可拖动/可编辑属性。

但是如何为android API实现相同的功能?

1 个答案:

答案 0 :(得分:2)

我解决了这个问题。我为每个顶点添加标记,将其保存到列表并添加onDragListener。每当发生onMarkerDrag回调时,我从标记中获取latLng并将它们设置为多边形。

 @Override
public void onMarkerDrag(Marker marker) {
    if (mPolygon == null) {
        return;
    }
    mPolygon.setPoints(markersToLatLng(mVertexMarkers));
}

private List<LatLng> markersToLatLng(List<Marker> markers) {
    List<LatLng> latLngs = new ArrayList<>();
    if (markers == null) {
        return latLngs;
    }
    for (Marker m : markers) {
        latLngs.add(m.getPosition());
    }
    return latLngs;
}