Это очень легко анимировать аннотацию координату на прошивке, используя следующий метод:Как оживить свойство координат аннотации MKAnnotation на OSX?
[UIView animateWithDuration:1.0f
animations:^(void){
annotation.coordinate = ...
}
completion:^(BOOL finished)completion{
NSLog(@"Animation complete");
}
Однако на OSX эквивалентного методе +[NSAnimationContext runAnimationGroup:]
не работает для меня - аннотацию переходит на новое место и сразу же вызывает обработчик завершения, то есть он не последние 10 секунд, как и ожидалось:
[NSAnimationContext runAnimationGroup:^(NSAnimationContext *context) {
context.duration = 10;
annotation.coordinate = destination;
} completionHandler:^{
NSLog(@"Animation complete");
}];
Я новичок в OSX, поэтому я предполагаю, что я что-то просто здесь, чтобы сделать эту анимацию работы отсутствует. Полагаю, что у меня есть свойство @coordinate не аниматируется в аннотациях OSX MKMapView, но это создало бы действительно странную разницу в реализациях MapKit на iOS и OSX.
Я создал simple test application, чтобы изолировать эту проблему.