基于罗盘旋转GMSMapView

时间:2016-07-14 09:03:52

标签: ios objective-c iphone google-maps rotation

我正在开发一个不允许手动与地图互动的应用。改变地图的唯一方法是当用户朝着一个方向移动时。因此,如果用户旋转手机旋转,因此基于iPhone中的指南针,地图应自动旋转,而不是用户通过2个手指手势将其旋转到方向。这是一张清楚了解这个想法的图片: enter image description here 考虑将红点作为我的位置,当我旋转手机时,我希望谷歌地图随之旋转。所以我的问题是如何实现这一目标?由于有一种方法,我在搜索后发现了[_myMap animateToViewingAngle:45];,但这并没有达到我想要的效果。

编辑我认为这有什么方法可以将lat和long值转换为角度?

1 个答案:

答案 0 :(得分:2)

您可以使用course中的CLLocation属性,并将其传递给animateToBearing的{​​{1}}方法。来自the documentation

  

<强>夫特

GMSMapView
     

<强>目标C

var course: CLLocationDirection { get }
     

<强>讨论

     

课程值以正北方向开始,以指南针顺时针方向连续测量。因此,北是0度,东是90度,南是180度,依此类推。课程值可能并非在所有设备上都可用。负值表示方向无效。