#android #dictionary #properties #polygon #geojson
#Android #словарь #свойства #полигон #geojson
Вопрос:
Я добавляю GeoJsonLayer на карту Google в своем приложении. Этот json содержит координаты для полигона и свойства для каждого полигона. Что мне нужно, так это получить эти свойства при нажатии на полигон. Это код, который я использую для достижения этой цели.
GeoJsonLayer jsonLayer = new GeoJsonLayer(mMap, geoJSON);
jsonLayer.addLayerToMap();
jsonLayer.setOnFeatureClickListener(new GeoJsonLayer.GeoJsonOnFeatureClickListener() {
@Override
public void onFeatureClick(final com.google.maps.android.data.Feature feature) {
mMap.setOnPolygonClickListener(new GoogleMap.OnPolygonClickListener() {
@Override
public void onPolygonClick(Polygon polygon) {
for (Object s : feature.getProperties()) {
Log.d("getProperties", "getProperties = " s.toString());
}
}
});
}
});
Проблема в том, что он возвращает все свойства. Я хочу, чтобы он возвращал свойства только для полигона, на который я нажал.
Также можно рисовать полигоны с помощью пользовательского ввода. Когда я нажимаю на эти полигоны, это срабатывает onPolygonClick()
внутри jsonLayer.setOnFeatureClickListener()
. Как проверить, является ли выбранный полигон из jsonLayer?