Как правильно реализовать кликабельные маркеры с помощью менеджера кликов в Mapbox SDK - PullRequest
0 голосов
/ 22 июня 2019

все. Я использую mapbox SDK для разработки приложений для Android. Я хочу разместить маркеры в определенных местах на моей карте и привязать к ним прослушиватели щелчков, чтобы при щелчке они запускали новое действие.

Вот так я сейчас добавляю свои маркеры.

НА КАРТЕ ГОТОВ

symbolLayerIconFeatureList.add(Feature.fromGeometry(
            Point.fromLngLat(location1.getLng(), location1.getLat())));

symbolLayerIconFeatureList.add(Feature.fromGeometry(
            Point.fromLngLat(location2.getLng(), location2.getLat())));

mapboxMap.setStyle(new 
Style.Builder().fromUrl("mapbox://styles/mapbox/cjerxnqt3cgvp2rmyuxbeqme7")

                    .withImage(ICON_ID, BitmapFactory.decodeResource(
                            Main2dMapActivity.this.getResources(), R.drawable.mapbox_marker_icon_default))
                    .withSource(new GeoJsonSource(SOURCE_ID,
                            FeatureCollection.fromFeatures(symbolLayerIconFeatureList)))
                    .withLayer(new SymbolLayer(LAYER_ID, SOURCE_ID)
                            .withProperties(PropertyFactory.iconImage(ICON_ID),
                                    iconAllowOverlap(true),
                                    iconOffset(new Float[] {0f, -9f}))
                    )
            ,
            new Style.OnStyleLoaded() {
                @Override
                public void onStyleLoaded(@NonNull Style style) {
                    enableLocationComponent(style);
                }
            });

Я понимаю, что в настоящее время рекомендуется использовать symbolManager, который расширяет annotationManager, а затем добавлять через него прослушиватели кликов, но я не могу понять, как это сделать.

Спасибо и всего наилучшего.

...