2016-04-08 106 views

回答

2
override func viewWillDisappear(animated: Bool) { 
// Do Your Lines of Code ... 
} 

每次當後退按鈕或完成按下或視圖彈出這個函數被調用..你需要重寫這個..

+2

使用,如果呈現的viewController或推動其他的viewController這也將被稱爲記住。 – Slayter

2

試試這個:

override func willMoveToParentViewController(parent: UIViewController?) { 
    if parent == nil { 
     // Back button Event handler 
    } 
} 
+0

我測試了這個,奇怪的是這個函數在我到達視圖控制器之前被調用,以及當我點擊後退按鈕時。不幸的是,這不適合我。當我需要時,Adbul的函數被調用。 – GED125

+1

如果當前的ViewController繼續推送到另一個ViewController,Abdul的函數有時會出現一些錯誤。 – Khuong

+0

這種方法根本沒有被調用 –

2

試試這個(從manecosta複製粘貼)

替換在另一個答案中建議的自定義按鈕可能不是一個好主意,因爲您將失去默認行爲和樣式。

您擁有的另一個選項是在View Controller上實現viewWillDisappear方法,並檢查名爲isMovingFromParentViewController的屬性。如果該屬性爲真,則意味着視圖控制器正在消失,因爲它正在被刪除(彈出)。

應該是這個樣子:

override func viewWillDisappear(animated : Bool) { 
    super.viewWillDisappear(animated) 

    if (self.isMovingFromParentViewController()){ 
     // Your code... 
    } 
} 

Here是鏈接到其他問題

相關問題