0

我开发了支持 iOS 5 和 iOS 6 的 iPhone 和 iPad 应用程序

在该应用程序中,我使用CLLocationManager.

当我想停止更新接收 GPS 坐标时。我打过电话stopUpdatingLocation

方法停止调用didUpdateToLocation方法。它在 iOS 5 和 6 上完全正常,但不幸的是它不适用于 iOS 7。

似乎该stopUpdatingLocation方法不起作用。任何特定原因。??

我有一个变量来监视didUpdateToLocation方法的生命周期并停止执行它。

4

2 回答 2

0

一件事可能是,

您在地图上移动的当前位置蓝点是因为您将 MKMapView 的 showsUserLocation 设置为 YES。它将跟踪,直到您将其设置为 NO。

第二件事,

您可能正在设置以下内容以停止调用该方法

locationManager = nil;

那并没有停止监控,而是它做了什么,而不是参考位置管理器,所以现在不可能停止监控。

而是添加下面的代码然后看看会发生什么

[locationManager stopUpdatingLocation];
locationManager=nil;

希望能帮助到你..

于 2015-06-02T07:17:18.990 回答
-1

@tdevoy - 这是示例

  - (void)locationManager:(CLLocationManager *)manager didUpdateLocations:(NSArray *)locations
{
    CLLocation *location = [locations lastObject];
    latitude = location.coordinate.latitude;
    longtitude = location.coordinate.longitude;

    //stops updating current user location update
        [locationManager stopUpdatingLocation];

}
于 2013-09-26T08:41:10.360 回答