【发布时间】:2020-07-16 18:27:47
【问题描述】:
我有两种方法可以删除/添加标记到我的应用程序。当数据库发生变化时,标记将被添加或删除。在我将属性“POPUP”添加到我的功能列表之前,一切正常。 现在,当我有地理定位和 POPUP 属性时 - 从功能列表中删除功能不起作用。我如何通过传递 Geopoint 和 POPUP 属性来删除功能。
我需要保存要素 Geopoint 和字符串值以及何时需要 - 删除它们。保存工作正常。
private void delMarkers(double lng, double lat, Style style, String popup_data){
//THIS LINE BELOW IS NOT WORKING
symbolLayerIconFeatureList.remove(Feature.fromGeometry(Point.fromLngLat(lng,lat)));
/////////////////////
GeoJsonSource geoJsonSourceSymbol = style.getSourceAs(SOURCE_ID);
if (geoJsonSourceSymbol != null) {
geoJsonSourceSymbol.setGeoJson(FeatureCollection.fromFeatures(symbolLayerIconFeatureList));
}
}
private void addMarkers(double lng, double lat, Style style, String popup_data){
feature = Feature.fromGeometry(Point.fromLngLat(lng,lat));
feature.addStringProperty(POPUP, popup_data);
symbolLayerIconFeatureList.add(feature);
GeoJsonSource geoJsonSourceSymbol = style.getSourceAs(SOURCE_ID);
if (geoJsonSourceSymbol != null) {
geoJsonSourceSymbol.setGeoJson(FeatureCollection.fromFeatures(symbolLayerIconFeatureList));
}
}
【问题讨论】: