我正在AppDelegate中执行startRangingBeaconsInRegion 一旦检测到信标......主视图控制器 - >去 - > ABC ViewController和我想要停止测距,直到用户点击“后退”按钮。 如何从新的ViewController ABC停止范围?当按下“后退”按钮时,再次开始测距? 谢谢!
答案 0 :(得分:0)
如果您只想在ABCViewController
处于活动状态时停止对信标进行测距,则可以在AppDelegate
中添加两种方法,如下所示:
func stopRanging() {
locationManager.stopRangingBeaconsInRegion(region)
}
func startRanging() {
locationManager.startRangingBeaconsInRegion(region)
}
然后在你的ABCViewController
中你可以添加这样的方法,这将导致在显示视图控制器时停止范围,并且只要它不可见就重新启动:
override func viewWillAppear(animated: Bool) {
super.viewWillAppear(animated)
let appDelegate = UIApplication.sharedApplication().delegate as! AppDelegate
appDelegate.stopRanging()
}
override func viewWillDisappear(animated: Bool) {
super.viewWillDisappear(animated)
let appDelegate = UIApplication.sharedApplication().delegate as! AppDelegate
appDelegate.startRanging()
}