您好我正在使用以下代码在地图上显示当前位置。我注意到当我四处旅行时,当前位置似乎没有更新。我希望位置指示器根据我旅行的地方更新指针。我该怎么做呢?目前只能在地图上显示当前位置,就是这样。
[self.mapView.locationDisplay startDataSource];
self.mapView.locationDisplay.autoPanMode = AGSLocationDisplayAutoPanModeCompassNavigation;
答案 0 :(得分:0)
您可能会收听位置更新:
- (void)registerAsObserver {
[ self.mapView.locationDisplay addObserver:self
forKeyPath:@"location"
options:(NSKeyValueObservingOptionNew)
context:NULL];
}
- (void)observeValueForKeyPath:(NSString *)keyPath
ofObject:(id)object
change:(NSDictionary *)change
context:(void *)context {
if ([keyPath isEqual:@"location"]) {
NSLog(@"Location updated to %@", [self.mapView.locationDisplay mapLocation]);
}
}
答案 1 :(得分:0)
尝试指定wanderExtentFactor - 再添加一行代码,wanderExtentFactor可以取0到1之间的值,只是看看哪种设置最适合你
[self.mapView.locationDisplay startDataSource];
self.mapView.locationDisplay.autoPanMode = AGSLocationDisplayAutoPanModeCompassNavigation;
self.mapView.locationDisplay.wanderExtentFactor = 0.5;