MapBox iOS: как изменить высоту тона в зависимости от уровня масштабирования?

#ios #swift #mapbox

#iOS #swift #mapbox

Вопрос:

Я использую MapBox SDK для iOS, и я хотел бы установить разный уровень высоты тона в зависимости от уровня масштабирования, как, например, в Pokemon Go: чем больше вид уменьшен, тем больше он воздушный, и когда он увеличен, высота тона увеличивается, в точке, где мы можем видеть небо над горизонтом.

Есть ли способ сделать это с помощью этого SDK?

Спасибо за вашу помощь.

Ответ №1:

Mapbox имеет две функции делегирования (https://docs.mapbox.com/ios/api/maps/4.2.0/Protocols/MGLMapViewDelegate.html#/MGLMapViewDelegate ), который вы можете использовать:

optional func mapViewRegionIsChanging(_ mapView: MGLMapView)

optional func mapView(_ mapView: MGLMapView, regionDidChangeAnimated animated: Bool)

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

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

1. Спасибо! Ключом была первая функция делегирования.