
然而,现在我需要一些需要在实际地图的方向上修复的注释,因此如果地图旋转,则注释符号需要随之旋转(例如,指示河流的箭头).
我不希望它们像地图一样使用地图缩放,但我确实希望它们随地图一起旋转.
我需要一个解决方案,主要用于用户用手指手动旋转地图时,以及当它由于在航向模式下跟踪而旋转时.
在谷歌地图上(至少在Android上)这很简单,只需一个简单的MarkerOptions.flat(true)
我希望ios不会太困难,我希望.
提前致谢!
解决方法 这是我用于类似的东西.- (voID)rotateAnnotationVIEw:(MKAnnotationVIEw *)annotationVIEw toheading:(double)heading{ // Convert mapheading to 360 degree scale. CGfloat mapheading = self.mapVIEw.camera.heading; if (mapheading < 0) { mapheading = fabs(mapheading); } else if (mapheading > 0) { mapheading = 360 - mapheading; } CGfloat offsetheading = (heading + mapheading); while (offsetheading > 360.0) { offsetheading -= 360.0; } CGfloat headingInradians = offsetheading * M_PI / 180; annotationVIEw.layer.affinetransform = CGAffinetransformMakeRotation(headingInradians);} 然后,这在regionDIDChange等中调用.
不幸的是,当用户旋转地图时,此解决方案不会旋转,但它会在之后进行自我纠正以确保其具有正确的标题.我将一些affinetransform包装成一个动画块,使它看起来不错.
希望这可以帮助,或者可能帮助您指出正确的方向.
总结以上是内存溢出为你收集整理的ios – 如何实现随地图旋转的MKAnnotationViews全部内容,希望文章能够帮你解决ios – 如何实现随地图旋转的MKAnnotationViews所遇到的程序开发问题。
如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。
欢迎分享,转载请注明来源:内存溢出
微信扫一扫
支付宝扫一扫
评论列表(0条)