如何在scrollView中停止用户位置

时间:2015-11-06 15:15:14

标签: swift location scrollview

我正在开发一个带滚动视图的1视图应用,在左右滑动时显示2个屏幕!!直到这里一切正常...

第一个屏幕包含一些图像和其他标签。 第二个屏幕显示了用户位置和反向地理编码信息的地图视图,我设法激活!!!

问题是:当我滑回屏幕1时,如何阻止该位置在后台运行。我认为必须有一个函数可以应用于secondView.swift取消位置管理器所以我可以省电!

1 个答案:

答案 0 :(得分:0)

嗨卡洛斯,欢迎来到SO!在您的第二个视图中,我假设您有一个CLLocationManager。因此,每当视图控制器被解除时,都会调用一个名为viewWillDisappear的方法,此处您可以通过调用locationManager.stopUpdatingLocation()使位置管理器无效。它看起来像这一切

class SecondView, CLLocationManagerDelegate {

    var locationManager: CLLocationManager!

    override func viewDidLoad() {
        super.viewDidLoad()
        //set up view, get user location, show on map, etc.
    }

    override func viewWillDisappear(animated: Bool) {
        super.viewWillDisappear(animated)
        self.locationManager.stopUpdatingLocation()
    }

}

另一个选择就是在您获得用户的位置后立即执行此操作。