Как нарисовать ломаную линию под названиями улиц в MapBox Android

#android #mapbox #mapbox-android #mapbox-android-nav

#Android #mapbox #mapbox-Android #mapbox-android-nav

Вопрос:

В настоящее время я рисую полилинию с помощью LineLayer и добавляю ее на карту с помощью style.addLayer(lineLayer) . Я заметил, что ломаная линия нарисована поверх названий улиц. Я хочу получить ее под метками на карте.

Я нашел метод, style.addLayerBelow(lineLayer, <belowLayerId>) который решит эту проблему, но не смог найти правильный идентификатор для использования в качестве belowLayerId. Может кто-нибудь, пожалуйста, помочь мне в этом вопросе.

Ответ №1:

Какой стиль вы используете? Вы можете просмотреть стиль в Mapbox Studio (https://studio.mapbox.com ) и посмотреть порядок слоев стиля. Если вы используете улицы Mapbox Style.MAPBOX_STREETS , идентификатор метки улицы road-label :

введите описание изображения здесь

Или вы можете распечатать идентификатор каждого слоя в logcat Android Studio, чтобы увидеть порядок слоев. Вторая область блока кода вhttps://docs.mapbox.com/android/maps/overview/styling-map/#retrieving-a-map-layer содержит информацию о распечатке всех слоев в Style .

Комментарии:

1. Название метки road-label могло бы решить мою проблему. Большое вам спасибо за объяснение. Ранее я пробовал печатать только символьные слои, но я мог найти только такие слои, как road-label-street, road-label-secondary-tertiary, road-label-primary, road-label-motorway-trunk, road-shields-black, road-shields-white, rail-label Но ни один из них не работал для меня. labelId road-label решил мою проблему.

2. Потрясающе, рад, что у вас все получилось. Счастливого строительства с Mapbox! Пожалуйста, подумайте о том, чтобы отметить мой ответ как правильный 🙂