Как я могу сказать, когда regionChange событие на MKMapView является программным, или перетащите пользователь MKMapView?

Я имею MKMapView с зарегистрированным делегатом, таким образом, я могу прислушаться к событиям изменения региона (а именно, regionDidChangeAnimated). Я ищу устойчивый способ сказать, было ли событие изменения региона результатом пользователя, перетаскивающего карту или от программного setRegion: запрос.

Моя цель состоит в том, чтобы иметь приложение, которое автоцентрирует карту на основе трассировки местоположения, если пользователь не панорамировал карту вручную, в которой автоцентрирование точки выключит. Таким образом я называю setRegion: для перецентрирования представления карты как соответствующего, но мне нелегко говорить если получающееся regionDidChangeAnimated: вызов делегату является программным или от пользовательского панорамирования. Я попытался взломать что-то вместе, но я продолжаю сталкиваться с условиями состязания, когда пользователь начинает панорамировать так же, как обновление информации о местоположении входит.

10
задан NANNAV 25 March 2013 в 05:14
поделиться