Аннотации MapKit не появляются на реальном устройстве iOS - PullRequest
0 голосов
/ 09 сентября 2018

Аннотации MapKit не отображаются на реальном устройстве iOS (iPhone 7, iOS 11). На iOS 12 Simulator все ок.

class BusStopAnnotationView: MKAnnotationView {

    override init(annotation: MKAnnotation?, reuseIdentifier: String?) {
        super.init(annotation: annotation, reuseIdentifier: reuseIdentifier)
    }

    required init?(coder aDecoder: NSCoder) {
        fatalError("init(coder:) has not been implemented")
    }

    override func prepareForDisplay() {
        super.prepareForDisplay()
        displayPriority = .defaultHigh
        image = #imageLiteral(resourceName: "bus")
    }

}

Основной вид контроллера:

mapView.register(BusStopAnnotationView.self, forAnnotationViewWithReuseIdentifier: MKMapViewDefaultAnnotationViewReuseIdentifier)

Добавление аннотации к тесту:

private let moscowRegion = MKCoordinateRegion(
        center: CLLocationCoordinate2D(latitude: 55.752729,
                                       longitude: 37.617975),
        span: MKCoordinateSpan(latitudeDelta: 1,
                               longitudeDelta: 1)
    )
...
let a = MKPointAnnotation()
        a.coordinate = moscowRegion.center
        mapView.addAnnotation(a)

mapView.setRegion(moscowRegion, animated: false)

Результат:

Симулятор iOS

enter image description here

iPhone

enter image description here

Я заметил, что в iOS 11 аннотации симулятора также не появляются. Так что это проблема iOS 11. Почему на iOS 11 не готовится PrepForDisplay?

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...