Как получить все функции из geo Json source Mapbox - PullRequest
1 голос
/ 08 января 2020

Я загрузил источник geo Json в свой mapView. У меня есть строка поиска в моем activity. Поэтому я планирую заполнить свои searchBar предложения типами объектов из источника geoJson, добавленного на мою карту. Я хотел бы сделать это из onMapStyleLoaded метода.

Итак, есть ли способ получить подробную информацию обо всех geoJson свойствах, например, 'name', и добавить все в arrayList, пока карта загружена? ?

@Override
    public void onMapReady(@NonNull final MapboxMap mapboxMap) {
        SearchActivity.this.mapboxMap = mapboxMap;
        mapboxMap.setStyle(Style.MAPBOX_STREETS, style -> {
            mapboxMap.addOnMapClickListener(SearchActivity.this);
            addGeoJsonSourceToMap(style);
// Create FillLayer with GeoJSON source and add the FillLayer to the map
            style.addLayer(new FillLayer(geoJsonLayerId, geoJsonSourceId)
                    .withProperties(fillOpacity(0.5f)));
                    GeoJsonSource source = style.getSourceAs(geoJsonSourceId);
                    if (source != null){
                        List<Feature> features = source.querySourceFeatures(Expression.get("name"));
                        //I want to all the features of my geoJson source so I can pass them to an arrayList.

                    }
        });
    }
...