是否可以重置根視圖控制器?重置意味着重置它的初始狀態,所以viewDidLoad
將被再次調用。我正在使用UITabBarController
,當我註銷時,我希望先前加載的所有選項卡都被卸載。如何重置根視圖控制器
2
A
回答
2
您可以通過註銷行動TabBarController的情況下設置爲RootViewController的做到這一點。
夫特3:
let storyBoard = UIStoryboard(name: "Main", bundle: nil)
let tabBarController = storyBoard.instantiateViewController(withIdentifier: "TabBarController") as! UITabBarController
UIApplication.shared.keyWindow?.rootViewController = tabBarController
UIApplication.shared.keyWindow?.makeKeyAndVisible()
目標C:
UIStoryboard *storyBoard = [UIStoryboard storyboardWithName:@"Main" bundle:nil];
UITabBarController *tabBarController = [storyBoard instantiateViewControllerWithIdentifier:@"TabBarController"];
[[[UIApplication sharedApplication] keyWindow] setRootViewController:tabBarController];
[[[UIApplication sharedApplication] keyWindow] makeKeyAndVisible];
0
如果您使用的是Tabbarcontroller
導航控制器然後導航到導航控制器,否則去Tabbarcontroller
原樣
let appDelegate = UIApplication.shared.delegate as! AppDelegate
let mainStoryboard = UIStoryboard(name: "Main", bundle: nil)
let tabBar = mainStoryboard.instantiateViewControllerWithIdentifier("TabBarController") as! TabBarController
appDelegate.window?.rootViewController = tabBar
appDelegate.window?.makeKeyAndVisible()
0
的UIViewController
設置view
屬性nil
UIApplication.shared.keyWindow?.rootViewController?.view = nil
它會強制UIViewController
從下一次撥打self.view
相關問題
- 1. 如何設置根視圖控制器
- 2. 設置根視圖控制器的模態視圖控制器
- 3. 重置根視圖控制器中的對象從子視圖控制器
- 4. 設置UIWindow的根視圖控制器
- 5. 如何推送根視圖控制器?
- 6. 根視圖控制器?
- 7. 子視圖控制器關閉後重新加載根視圖控制器
- 8. 如何有條件地設置導航控制器的根視圖控制器
- 9. 如何從AppDelegate.swift訪問不是根視圖控制器的視圖控制器?
- 10. 分割視圖控制器必須是根視圖控制器
- 11. 分割視圖控制器不作爲根視圖控制器
- 12. 將視圖控制器從根到視圖控制器(SplitView)
- 13. 如何重新啓動或重置視圖控制器
- 14. Xcode:重置視圖控制器大小
- 15. 重置模態視圖控制器
- 16. 我如何設置NavigationController根視圖控制器
- 17. 如何在UINavigationController中設置根視圖控制器的原點?
- 18. 如何以編程方式設置根視圖控制器?
- 19. 爲視圖控制器根視圖設置外觀代理
- 20. 從詳細視圖中設置根視圖控制器在UISplitViewController
- 21. 如何刪除表視圖中的根視圖控制器
- 22. 重置選項卡欄控制器的視圖控制器
- 23. 設置導航控制器時,根視圖控制器始終設置爲tableViewController
- 24. 視圖控制器設置
- 25. 如何重置視圖控制器的值?
- 26. 如何重置前一個視圖控制器中的數據?
- 27. 如何以編程方式重置視圖控制器
- 28. 限制從詳細視圖控制器顯示根視圖控制器
- 29. 子視圖控制器通知根視圖控制器加載另一個子視圖控制器
- 30. 如何從IBAction返回到根視圖分割視圖控制器到主視圖控制器
開始他的生命週期開始創建新實例並設置爲根視圖控制器可能幫助 –
爲什麼不使用'viewWillAppear'來重置狀態? – Hodson
[可以在導航控制器中再次使用viewDidload方法調用?](https://stackoverflow.com/questions/33778426/does-viewdidload-method-call-again-on-going-back-在屏幕上導航控制) – Himanth