Bitte schauen Sie auf meine Code Schicht aus GeoJSON Zeichenfolge zu erstellen und fügen Schicht zuzuordnen:Android Google Maps GeoJsonLayer OnFeatureClickListener, mehrere Schichten
private GeoJsonLayer createLayerFromGeojson(String json)
{
JSONObject ob = null;
try
{
ob = new JSONObject(json);
}
catch (JSONException e)
{
e.printStackTrace();
}
GeoJsonLayer layer = new GeoJsonLayer(googleMap, ob);
layer.addLayerToMap();
layer.setOnFeatureClickListener(feature -> Utils.showMessage(getActivity(), "Clicked", feature.getProperty("description").toString()));
return layer;
}
Next 2 Ebenen hinzufügen zur Karte:
String json = /*first geojson string here*/
String json2 = /*another geojson string here*/
createLayerFromGeojson(json);
createLayerFromGeojson(json2);
Problem : Wenn ich auf Marker oder Pologon klicke, wird immer die Beschreibung aus dem zweiten json (json2) angezeigt, auch wenn ich auf das Objekt klicke, das vom ersten json auf der ersten Ebene erstellt wurde.
Was ist los? Irgendwelche Ideen?
Ja, es dargestellt hat es schon aus. Es ist mir schließlich gelungen, alle meine Objekte zu einer einzelnen Ebene hinzuzufügen, und meine Karte enthält nur eine einzelne Ebene. – user1209216
Wie verwalten Sie den Klick für einzelne Funktionen mit nur einem GeoJson? Ich habe Probleme bei der Überlappung von Features. –
Kurz gesagt, es ist mir gelungen, alle Features aus allen Geojons, die ich habe, zu extrahieren. Fügen Sie dann alle extrahierten Features zu einer einzelnen Ebene in meiner Map hinzu und legen Sie für jedes Feature einen Klick-Listener fest – user1209216