gpt4 book ai didi

iphone - 使用 CLLocationManager 的正确方法(开始/停止更新用户位置)

转载 作者:行者123 更新时间:2023-11-29 10:54:45 24 4
gpt4 key购买 nike

我在 UIViewController 中有一个 UIView 和一个 MKMapView,它仅在用户点击按钮时出现。

过程如下:

  • CLLocationManager 对象在 header 文件中声明为私有(private)成员。
  • 一个 UIView 和一个 MKMapView 出现(最初框架在边界之外。根据用户的操作移动到 View 边界内,在相同的 viewController).
  • 初始化:

    locationManager = [[CLLocationManager alloc]  init];
    locationManager.distanceFilter = kCLDistanceFilterNone; // whenever we move
    locationManager.desiredAccuracy = kCLLocationAccuracyBest; // 100 m
    [locationManager startUpdatingLocation];
    CLLocation *location = [locationManager location];
    CLLocationCoordinate2D coordinate = [location coordinate];

    MKCoordinateSpan span = MKCoordinateSpanMake(0.04, 0.04);
    MKCoordinateRegion region = MKCoordinateRegionMake(coordinate, span);
    mapView.showsUserLocation = YES;
    [mapView setRegion:region animated:YES];
  • 使用 Foursquare API

    获取附近位置

现在,当 view 从可见边界移除时,我希望停止位置锁定。我用 stopUdatingUserLocation 试过了。我还发布了 locationManager,但是 GPS 锁定图标一直在 statusBar 中。据我了解,连续 GPS 锁定会耗尽电池电量,我想停止这种情况。我该怎么做?

最佳答案

即使没有正式记录,最好在整个应用程序中只使用一个 CLLocationManager。把它当作一个单例,不要每次都初始化它,它应该可以正常工作。

关于iphone - 使用 CLLocationManager 的正确方法(开始/停止更新用户位置),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18918019/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com