Ios MKMapView在拖动时旋转,而不是保持航向
我正在我的应用程序中设置Ios MKMapView在拖动时旋转,而不是保持航向,ios,mkmapview,Ios,Mkmapview,我正在我的应用程序中设置MKMapView对象,以显示用户位置并将地图锁定在设备标题上,如下所示: - (void)viewDidLoad { [super viewDidLoad]; [self firstSetMapView]; } -(void)firstSetMapView{ _map_view.delegate = self; _map_view.showsUserLocation = YES; _map_view.userTrackingMode
MKMapView
对象,以显示用户位置并将地图锁定在设备标题上,如下所示:
- (void)viewDidLoad
{
[super viewDidLoad];
[self firstSetMapView];
}
-(void)firstSetMapView{
_map_view.delegate = self;
_map_view.showsUserLocation = YES;
_map_view.userTrackingMode = MKUserTrackingModeFollowWithHeading;
}
如果我不拖拽地图,效果会很好。如果我更改缩放级别,它将按预期正常工作。
问题是,当我拖动地图时,我看到地图旋转到另一个标题,MKUserTrackingModeFollow
,因此我实现了以下代码:
- (void)mapView:(MKMapView *)mapView didChangeUserTrackingMode:(MKUserTrackingMode)mode animated:(BOOL)animated {
if (mapView.userTrackingMode != MKUserTrackingModeFollowWithHeading) {
[mapView setUserTrackingMode:MKUserTrackingModeFollowWithHeading];
}
}
现在航向正在返回,但只有在有线旋转发生之后
我该怎么办?
谢谢 您必须有自己的代码才能保持旋转。
MKUserTrackingModeFollowWithHeading
的一半是Follow
部分,通过将地图拖动到其他地方,您可以停止以下操作。当位置管理器更新用户的位置时,您可以读取该位置的标题,并将MKMapview旋转到该值