我使用這行代碼在我的iOS應用程序如何刷新前一個頁面當SEGUE回
self.navigationController?.popToRootViewControllerAnimated(false)
這需要用戶回到登錄頁面,但它並不適用於所有最近重裝登陸數據。
它不會再次運行此代碼:
override func viewDidLoad() {
super.viewDidLoad()
...
}
如何讓SEGUE再次引起viewDidLoad中?
我使用這行代碼在我的iOS應用程序如何刷新前一個頁面當SEGUE回
self.navigationController?.popToRootViewControllerAnimated(false)
這需要用戶回到登錄頁面,但它並不適用於所有最近重裝登陸數據。
它不會再次運行此代碼:
override func viewDidLoad() {
super.viewDidLoad()
...
}
如何讓SEGUE再次引起viewDidLoad中?
使用viewWillAppear
方法。
是將用於重新加載的代碼移動到viewWillAppear而不是viewDidLoad中 –
您正在發送從viewDidLoad()
的網絡電話。所以要更新您的viewController,請在viewWillAppear()
中添加您的Web請求方法。
注意:viewDidLoad
只有當視圖控制器加載一次纔會被調用。然而,viewWillAppear
在出現之前會被調用,如果您在視圖之間來回跳動,那麼經常會發生這種情況。
它不應該再次運行「ViewDidLoad」,視圖已經加載。但是它會像下面的Dharmesh所說的那樣運行ViewWillAppear,你需要重新配置來處理這樣的事件。這是視圖控制器的正確流程 – Loxx