我有这两种方法可以用来锁定用户在地图中的位置,而且效果很好……
但是,我想它工作得很好,哈哈,每当我用户移动地图以查看地图上的其他位置时......它会迫使用户回到当前位置所在的位置。
所以我想我的问题是,如何在用户滚动地图后禁用对用户位置的锁定。
- (void)viewDidLoad {
// more code here that i didn't post
[self.mapView.userLocation addObserver:self
forKeyPath:@"location"
options:(NSKeyValueObservingOptionNew|NSKeyValueObservingOptionOld)
context:NULL];
}
- (void)observeValueForKeyPath:(NSString *)keyPath
ofObject:(id)object
change:(NSDictionary *)change
context:(void *)context {
if ([self.mapView showsUserLocation]) {
MKCoordinateRegion region;
region.center = self.mapView.userLocation.coordinate;
MKCoordinateSpan span;
span.latitudeDelta = 1; // Change these values to change the zoom
span.longitudeDelta = 1;
region.span = span;
[self.mapView setRegion:region animated:YES];
}
}