我有一个带有地图的应用程序,想要在更新时缩放到当前位置。

我使用-(void)mapView:(MKMapView *)mapView didUpdateUserLocation:(MKUserLocation *)userLocation委托方法来了解用户位置的更新时间。

现在在模拟器上,它应该被调用。但是,当我在设备(iPhone 2g)上对其进行测试时,该位置会在地图上更新,但是根本没有调用“ didUpdateUserLocation”方法,与委托方法“ mapViewWillStartLocatingUser”相同。

系统询问我是否允许获取我的应用位置并开始显示我的位置,但是

- (void)mapView:(MKMapView *)mapView didUpdateUserLocation:(MKUserLocation *)userLocation {
NSLog(@"didUpdateUserLocation = '%@'", userLocation);


}

永远不会被调用。

最佳答案

参考提到该委托方法自iOS 4.0起可用。您的模拟器最有可能在手机-iOS 3.1上运行iOS 4.0。

我遇到同样的问题,仍在寻找解决方案。也许直接访问CL方法会有所帮助。

关于iphone - MKMapView didUpdateUserLocation未更新,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/3165051/

10-09 07:55