#ios #performance #mapkit #mkannotationview
Вопрос:
- Я создал настраиваемое представление аннотаций , расширив
MKAnnotationView
и переопределив[MKAnnotationView setImage:]
метод. - Когда
[MKAnnotationView setImage:]
вызывается метод,[MKAnnotationView setBounds:]
вызывается и, таким образом[MKAnnotationView _metricsDidChange]
, вызываются и некоторые другие методы. - Я вижу, что
[MKAnnotationView _metricsDidChange]
это узкое место для проблемы производительности. - В то время как в SDK 14 такой метод не вызывается.
Прикрепите скриншот профиля времени ниже:
Ответ №1:
Временное исправление
Я искал, но безуспешно, чтобы найти какие-либо официальные материалы.
Наконец, я нашел обходной путь, чтобы убедиться, что SDK не будет вызывать [MKAnnotationView setBounds:]
[MKAnnotationView setImage:]
метод:
- установите
MWAnnotationView
рамку (используя размер изображения), прежде чем устанавливать изображение на нее.
Дома это помогает.