MKMapView旋转经验

jes*_*rry 8 iphone cocoa-touch affinetransform mapkit mkmapview

我有一个我正在考虑旋转的MKMapView,以便更方便地向我的用户显示一系列注释.

到目前为止,我计划用CGAffineTransform简单地旋转整个视图,但我想知道是否有人有任何MKMapView旋转经验.

  • 添加旋转时是否存在任何陷阱或"陷阱"?
  • 是否有更简单的方法来旋转mapview?
  • 如果我有一个叠加,convertCoordinate:toPointToView:方法仍然以相同的方式工作?我会假设我必须将相同的变换应用于我的叠加层以便排列点,但也许方法比这更聪明.

如果您认为有什么可以帮助我,我很乐意听到这一切.


编辑:经过多次实验,我相信我将使用静态地图,我可以自己旋转和叠加,但是,我仍然会对MKMapView旋转的任何信息感兴趣.

Vla*_*mir 8

我还打算在我的应用程序中使用旋转的MKMapView.要显示未旋转的注释,请使用以下代码:

- (MKAnnotationView *)mapView:(MKMapView *)mapView viewForAnnotation:(id <MKAnnotation>)annotation{
    ...
    annotationView.transform = GAffineTransformInvert(mapView.transform);
    ...
}
Run Code Online (Sandbox Code Playgroud)

它似乎对我有用.


Tom*_*mmy 6

很抱歉要重新完成一个已完成的主题,但还有一个"问题":如果您将地图视图的大小调整到足以旋转以便它始终覆盖整个屏幕,那么您最终会从左下角裁剪"Google"徽标.这明显违反您使用MapKit的许可,可能是拒绝应用的理由.实际上,在顶部添加静态版本的Google徽标作为UIImageView似乎被各方认为是可以接受的.


sla*_*ick 5

这是使用iPhone ccelerometerMKMapView旋转的新样本.希望它会有所帮助.