拖动时MKMapView会旋转而不是保持标题

时间:2013-12-02 14:13:00

标签: ios mkmapview

我在我的应用中设置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];
    }
}

所以现在标题正在返回,但只有在有线旋转发生后才会返回。

我该如何管理? 谢谢!

1 个答案:

答案 0 :(得分:0)

您必须拥有自己的代码才能将轮换保持在您想要的位置。 MKUserTrackingModeFollowWithHeading的一半是Follow部分,通过将地图拖动到其他地方,您可以停止以下操作。当位置管理器更新用户的位置时,您可以读取该标题,并将MKMapview旋转到该值。