Установить уровень масштабирования в MapView на основе аннотаций в Swift

У меня есть mapView с несколькими аннотациями. Я бы хотел, чтобы уровень масштабирования был минимальным, чтобы видеть все аннотации. Другими словами, я хочу, чтобы масштабирование было достаточно близко, чтобы вы могли видеть все аннотации.

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

Вот чрезвычайно простой способ, которым я делаю это вручную:

self.mapView.setCenter(location, zoomLevel: 9, animated: false)

Буду признателен за любые предложения о том, как сделать это автоматически.

Обратите внимание, что мой mapView на самом деле является MGLMapView, так как я использую MapBox. Я полагаю, что подклассы MGLMapView mapView поддерживают методы mapKit, поэтому может работать обычный метод mapView. Метод, уникальный для MGLMap View, также может работать, но я не могу заставить работать камеру (класс в MGMapView).

Следующее, например, не имеет никакого эффекта, хотя я установил делегат:

let camera = MGLMapCamera(lookingAtCenter: annotation.coordinate, fromDistance: 4000, pitch: 0, heading: 0)

Спасибо заранее за любые предложения

0 ответов

Другие вопросы по тегам