我有一个已设置的MKMapView:

[self.mapView setShowsUserLocation:YES];

我想显示用户的位置,并在他/她移动时更新位置。调用didUpdateUserLocation时,即使用户平移了应用程序以查看其他区域,地图似乎也重新对准了用户的位置。我想要的是既能够跟踪用户的位置,又能让用户浏览地图。我的didUpdateUserLocation当前如下所示:
- (void)mapView:(MKMapView *)mapView didUpdateUserLocation:(MKUserLocation *)userLocation {

    _currentLocation = userLocation;

    [self.mapView setRegion:MKCoordinateRegionMake(CLLocationCoordinate2DMake(self.currentLocation.coordinate.latitude + 0.0015, self.currentLocation.coordinate.longitude), MKCoordinateSpanMake(0.01, 0.01)) animated:NO];

    [...]
}

我应该做什么才能实现自己想要的任何想法?

最佳答案

只要将MKMapView的showsUserLocation属性设置为YES,用户位置就会自动更新(参见Apple Docs)。

您应该删除“setRegion”行,因为该行将视图集中在用户位置上。

关于ios - iOS MKMapView-如果用户已平移/拖动 map View ,则停止将 map View 重新居中到用户的位置,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/21598632/

10-10 21:01