2016-07-14 4 views
1

Я работаю над приложением, где ручное взаимодействие с картой не допускается. Единственный способ изменить карту - когда пользователь движется в направлении. Поэтому, если пользователь поворачивается, телефон вращается, и поэтому на основе компаса в iPhone карта должна вращаться автоматически, а не поворачивать ее в направлении двумя пальцами. Вот картина, которая проясняет идею немного больше: enter image description here Рассмотрите красную точку как мое местоположение, и когда я поворачиваю свой телефон, я хочу, чтобы карта google вращалась вместе с ней. Итак, мой вопрос в том, как это можно достичь? Поскольку есть метод, я нашел [_myMap animateToViewingAngle:45]; после поиска, но это не сделал то, что я искал.Повернуть GMSMapView на основе компаса

EDIT Я думал об этом, есть ли способ конвертировать значения lat и long в угол?

+0

См. Мой ответ здесь http://stackoverflow.com/questions/38208747/gmsmapview-tracking-mode-heading/38209077#38209077 – Bharat

ответ

2

Вы можете использовать имущество course от CLLocation и передать его методу animateToBearing вашего GMSMapView. От the documentation:

Swift

var course: CLLocationDirection { get } 

Objective-C

@property(readonly, nonatomic) CLLocationDirection course 

Обсуждение

значения курса измеряются в градусах, начинающихся с севера и продолжающихся по часовой стрелке вокруг компаса. Таким образом, север составляет 0 градусов, восток - 90 градусов, юг - 180 градусов и т. Д. Значения курса могут быть недоступны на всех устройствах. Отрицательное значение указывает, что направление недействительно.

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