[英]Swift viewWillAppear not being called after dismissing view controller
[英]Swift 4 Call ViewWillAppear after dismissing View Controller
我想在解雇ViewController
后調用viewWillAppear
。
ViewController1
> Segue
> ViewController2
在VeiwController2中
1.)
self.dismiss(animated: true, completion: nil)
2.)
override func viewDidDisappear(_ animated: Bool) {
ViewController1().viewWillAppear(true)
}
在VeiwController1中
調用viewWillAppear
,我收到的null
錯誤使我的應用崩潰。 我該如何關閉overContext
ViewController
並以正確的方式調用viewWillAppear
方法。
關閉VC2時,會自動調用viewWillAppear。 刪除: ViewController1().viewWillAppear(true)
嘗試刪除:
VC1中的super.viewWillAppear(animated)
。 viewDidAppear沒有被調用
它甚至可以回到您的VC嗎? self.dismiss在此處與“模態呈現”一起使用。 或使用popViewController嵌入到NavigationBar中
// Override this function in ViewController1
override func viewWillAppear(_ animated: Bool) {
super.viewWillAppear(true)
//Your code here will execute after viewDidLoad() or when you dismiss the child viewController
}
我建議您經歷一下ViewController的生命周期。 Apple ViewController生命周期文檔
您的模態應該為.fullScreen
試試這個:
let createAccounts = CreateAccounts();
let navController = UINavigationController(rootViewController: createAccounts)
navController.modalPresentationStyle = .fullScreen
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.