местоположение пользователя Голубая мраморная капля - PullRequest
2 голосов
/ 12 января 2010

Кто-нибудь знает, что вызывает синюю мраморную анимацию. Я знаю, что это происходит, когда местоположение обновляется, но как мне вызвать это событие с тем, что находится в этом свойстве. У меня есть приложение, которое я хотел бы показать местоположение пользователя, когда карта появляется, но затем очистить карту от всех аннотаций (включая местоположение пользователя), когда карта исчезнет. Это отлично работает. Проблема заключается в том, что когда я пытаюсь вернуться на карту после удаления местоположения пользователя, синий мрамор не появляется снова. Кто-нибудь знает, как настроить эту анимацию снова?

спасибо заранее.

1 Ответ

2 голосов
/ 12 января 2010

Если вы установите MKMapView для отображения местоположения пользователя, установив для его свойства showsUserLocation значение YES, то на карте автоматически будет отображаться местоположение пользователя, если только его / ее координаты не находятся вне карты. Вы можете проверить это, проверив свойство userLocationVisible.

Теперь, если вы удалите местоположение пользователя (свойство userLocation, которое является аннотацией), тогда карта не сможет показать местоположение пользователя, даже если для showsUserLocation установлено значение yes. Просто восстановите userLocation снова, обновив его с помощью CoreLocation framework, и он снова автоматически появится на карте.

РЕДАКТИРОВАТЬ: чтобы запустить анимацию, обновите местоположение пользователя, заново настройте область, которая будет отображаться (возможно, изменился центр и / или диапазон), а затем вызовите

[map setRegion:newRegion animated:YES];

Если регион не изменился, просто используйте его снова.

...