Подкласс MKAnnotationView - PullRequest
       15

Подкласс MKAnnotationView

5 голосов
/ 15 сентября 2010

Кто-нибудь когда-нибудь успешно отменял метод setDragState в MKAnnotationView?Если я попытаюсь найти его с "mkannotationview setDragState", я получу только три попадания!Одним из них является мой другой пост о stackoverflow;)

В ссылке говорится, что при создании подкласса MKAnnotationView подкласс должен заботиться о dragstate.Но это не говорит, как именно.Только установка dragstate в MKAnnotationViewDragStateDragging или, скорее, MKAnnotationViewDragStateCanceling кажется недостаточной.Потому что, если я просто сделаю это, одна из проблем, например, заключается в том, что представление карты не получает функцию делегата mapView:annotationView:didChangeDragState:fromOldState:.

Я попытался переопределить ее, установив dragState также в суперклассе.Но в этот момент возникают другие ошибки: например, если я перетаскиваю annotationView и мой палец убегает с экрана, приложение вылетает с чем-то вроде «не удается удалить наблюдателя для dragstate ключевого пути» (но мой подкласс не имеет наблюдателей, о которых я знаю),Похоже, что есть и другие вещи, о которых нужно позаботиться.

В этом посте на форуме разработчиков Apple https://devforums.apple.com/message/203107#203107 aroonicus, парень из apple, упоминает, что вам нужно переопределить [MKAnnotationView setDragState:]но, к сожалению, он не говорит, как.

Кто-нибудь может помочь?Кто-нибудь знает, как переопределить setDragState?Кто-нибудь создал рабочий подкласс MKAnnotationView, переопределяющий setDragState?

Пока,

Бен

Ответы [ 2 ]

3 голосов
/ 13 января 2012

Обратитесь к этой теме, обратитесь ко второму ответу, где для переопределения существующего используется пользовательский класс представления аннотации.Это работает

Подклассы MKAnnotationView и переопределение setDragState

0 голосов
/ 17 апреля 2011

Это возможно с помощью пользовательских аннотаций. Смотрите следующий пример проекта: http://digdog.tumblr.com/post/1616858395/note-about-mapkitdraganddrop-3-2

...