2017-08-25 91 views
0

我已經sublassed UINavigationController符合我的需要和用例。有爲了檢測動作我已經重寫方法是正確調用所需行動:如何檢測popViewController上的哪個ViewController被func覆蓋?

var popViewController: ((UIViewController) -> Void)? 

    override func popViewController(animated: Bool) -> UIViewController? { 
     return super.popViewController(animated: animated) 
    } 

我想檢查哪些VC是爲了進一步進行比較,以評估的部分屬性當前彈出。 我嘗試的第一件事是添加var,這將在此重寫方法內更改。

var popViewController: ((UIViewController) -> Void)? 

但我沒有進一步的線索應該做什麼。 這甚至有可能在這裏做?

回答

2

我不明白爲什麼你有一個閉合型的變量,你可以檢查被在覆蓋方法正確彈出視圖控制器無需任何存儲性能:

override func popViewController(animated: Bool) -> UIViewController? { 
    let popVC = super.popViewController(animated: animated) // this is the view controller that will be popped 
    // Do what ever check you want to do here 
    return popVC 
} 
+0

我用這個clousure來分配並將返回的VC傳遞給另一個類 - 因此我現在沒有想法去做。 – Drwalcore