2016-03-14 36 views
0

我在做AppDelegate中的startRangingBeaconsInRegion 一旦檢測到信標...主視圖控制器 - >轉到 - > ABC ViewController,我想停止測距,直到用戶單擊「返回」按鈕。 如何停止從新的ViewController ABC進行測距?當按下「返回」按鈕時,再次開始測距? 謝謝!從AppDelegate的Xcode Swift iBeacon

回答

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() 
} 
+0

謝謝。正是我需要的。這就是爲什麼你他們稱你爲烽火大師:) – lee

相關問題