0

在我的 didUpdateToLocation 方法中,我正在获取位置更新,但我当前位置的移动有些生涩。

这是接收位置更新的委托:

-(void)locationManager:(CLLocationManager *)manager didUpdateToLocation:(CLLocation   *)newLoc fromLocation:(CLLocation *)oldLoc
{
    MKCoordinateRegion region;
    region.center.latitude = newLoc.coordinate.latitude; 
    region.center.longitude = newLoc.coordinate.longitude;
    region.span.latitudeDelta = 0.1;
    region.span.longitudeDelta = 0.1;
    [self.mapView setRegion:region animated:YES];
}

你能帮我确定如何获得平滑的位置更新吗?我在网上搜索,发现我们可以在ios5中使用跟踪模式来获得平滑的位置更新。如果是这种情况,那么我应该在我当前的代码中进行哪些更改。

如果我设置 [self.mapView setUserTrackingMode:MKUserTrackingModeFollow animated:YES]; 鉴于确实加载了,那么我是否需要在位置更新中再次设置该区域?或者它会自动设置,因为我使用了用户跟踪模式?

4

2 回答 2

0

尽管它会更快地耗尽电池电量(因此除非需要,否则不应使用它),但如果使用不同的desiredAccuracy.

如果您参考 Apples list of Accuracy Constants,您可能会找到kCLLocationAccuracyBestForNavigation更好kCLLocationAccuracyBest的选择。

于 2012-08-10T05:22:09.333 回答
0

设置跟踪模式后,您无需进行任何手动区域/视图设置。

于 2012-08-10T16:14:48.953 回答