【发布时间】:2018-04-11 09:59:30
【问题描述】:
我试图找出如何通过拖动其顶点来编辑 多边形。 JavaScript API 中有多边形的可拖动/可编辑属性。
但是我怎样才能为android API 实现相同的功能呢?
【问题讨论】:
标签: android google-maps polygon
我试图找出如何通过拖动其顶点来编辑 多边形。 JavaScript API 中有多边形的可拖动/可编辑属性。
但是我怎样才能为android API 实现相同的功能呢?
【问题讨论】:
标签: android google-maps polygon
我解决了这个问题。我为每个顶点添加标记,将其保存到列表并添加 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;
}
【讨论】: