我试图通过拖动顶点来了解如何编辑 polygon 。 JavaScript API
中的多边形有可拖动/可编辑属性。
但是如何为android API
实现相同的功能?
答案 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;
}