2013-11-17 2 views
0

Я проверил вариант «Показывает местоположение пользователя» в представлении «Карта» в моей раскадровке. Я использую симулятор и не имею доступа к реальному устройству. Когда я запускаю код, я вижу, что синий значок на моей карте по умолчанию считается Калифорнией, как вы ожидаете.Что делает опция «Показывать местоположение пользователя» в Map View?

Мне было интересно, обновляется ли этот синий значок на реальном устройстве? Движется ли он, когда пользователь движется?

Или есть ли дополнительный код, который необходимо внести, чтобы заставить его работать?

+1

Возможно, вы также захотите установить 'userTrackingMode' в' MKUserTrackingModeFollow' или 'MKUserTrackingModeFollowWithHeading' в коде, если вы хотите, чтобы карта перемещалась по ходу движения. – Rob

+0

@Rob - Что ты имеешь в виду? По сути, пользователь будет ходить, и я хочу, чтобы синяя иконка следила за ними, куда они идут, чтобы они знали, где они относятся к моим аннотациям. Габриэле внизу сказал, что это все, что мне нужно ...? Пожалуйста, дополните. Благодарю. – Anthony

+0

Вопрос в том, сохраняется ли карта неподвижно, а синяя точка перемещается по этой карте ('MKUserTrackingModeNone'), или синяя точка пользователя остается посередине экрана, а карта в фоновом режиме перемещается, чтобы следовать за пользователем и сохраните синий значок, расположенный в середине отображения карты ('MKUserTrackingModeFollow'). И на устройствах, которые поддерживают заголовки (т. Е. Компас), «MKUserTrackModeFollowWithHeading» делает еще один шаг, так что «вверх» на карте, как правило, является направлением, на которое указывает устройство. – Rob

ответ

1

Вариант раскадровки соответствует showsUserLocation объекту MKMapView. Из (курсив добавлен) documentation

Это свойство не указывает, является ли на самом деле видимое положение пользователя на карте, необходимо только ли посмотреть на карте попытаться отобразить его. При настройке этого свойства на значение YES заставляет map view использовать структуру Core Location, чтобы найти текущее местоположение и попытаться отобразить его на карте. Пока это свойство ДА, отображение карты продолжает отслеживать местоположение пользователя и периодически обновлять его. Значение по умолчанию этого свойства равно NO.

Конечно, это предполагает, что службы определения местоположения включены, и пользователь предоставил приложение доступ к ним.

+0

Хорошо спасибо. Итак, да, да ... – Anthony

+0

Да, это так. Никакого дополнительного кода не требуется, если вам не нужно делать что-то лишнее, как поворот карты с заголовком, как уже предложил Роб. –

Смежные вопросы