Ярлыки для маркеров Android Mapbox - PullRequest
0 голосов
/ 25 ноября 2018

Я пытаюсь выяснить, как заставить динамически генерируемый список маркеров отображать динамическую текстовую метку на карте (не в информационном окне).Я знаю, что это возможно, потому что я использовал эту функцию в Mapbox Studio - я просто не могу понять, как это сделать на Android!Я подумал о создании статического растрового значка со встроенным текстом, но он не выглядит очень гибким по сравнению с версией Mapbox Studio, поэтому я хотел бы избежать этого, если смогу!Есть предложения?

1 Ответ

0 голосов
/ 25 ноября 2018

Вы пытаетесь сделать то, что называется стиль данных, управляемый данными

Вы должны использовать SymbolLayer для отображения текста на карте.Если текст, который вы хотите показать, основан на возможностях GeoJSON в вашем наборе данных, используйте выражение get в свойстве textField SymbolLayer.

FeatureCollection featureCollection = FeatureCollection.fromFeatures();
GeoJsonSource geoJsonSource = new GeoJsonSource("source-id", featureCollection);
mapboxMap.addSource(geoJsonSource);

SymbolLayer symbolLayer = new SymbolLayer("layer-id", "source-id")
  .withProperties(PropertyFactory.textField(Expression.get("FEATURE-PROPERTY-KEY")));
mapboxMap.addLayer(symbolLayer);

Аннотация.Плагин упрощает некоторые из них.Также для справки, чтобы увидеть, как используются SymbolLayer, есть демонстрационное приложение Mapbox для Android .

...