Анимация пользовательской выноски для MKAnnotationView в MKMapView с эффектом “всплывающего окна”
-
19-09-2019 - |
Вопрос
Наконец-то мне удалось создать пользовательский UIView с выноской, который отображается при нажатии на MKAnnotationView.Я сделал это, переопределив
- (void)setSelected:(BOOL)selected animated:(BOOL)animated;
в моем пользовательском подклассе MKAnnotationView.Примечание:Я предотвратил отображение основной выноски, установив для свойства canShowCallout значение NO .
Я бы хотел попробовать воспроизвести анимацию, которую использует стандартная выноска...Кажется, что он пузырится - становится немного больше, чем предполагалось, а затем возвращается к своему нормальному размеру.Пока что я, кажется, в растерянности, пытаясь понять, как создать аналогичную анимацию с помощью core animation.У кого-нибудь есть какие-либо предложения или подсказки?
Заранее спасибо!
Решение 2
Я нашел достойное решение для этого.Тот Самый библиотека ftutils обеспечивает всплывающую анимацию.Позвонить тоже действительно легко:
#import "FTAnimation.h"
[self.viewToAnimate popIn:.4 delegate:nil];
Другие советы
Я разработал специальную выноску, которая почти идентична системной выноске, но обеспечивает большую гибкость в отношении высоты и содержания.Смотрите мой пост на Блог асинхронных решений например код.В нем также подробно описаны шаги по анимации выноски с помощью Core Animation, чтобы она появлялась из отметки на карте.Он включает в себя аффинное преобразование, которое масштабирует и переводит представление.