我是IOS的新手。 我的問題是,我有一些視圖控制器作爲NavigationController,mainVC,VC1,VC2,VC3,CameraVC。在cameraVC我有一個完成的按鈕行動doneClicked。這些全部視圖控制器都在NavigationController中推送。呈現VC1,而不是推入導航控制器。 doneClicked函數實現poptorootviewcontroller。當我點擊完成按鈕,它讓我到VC1但不是主VC。有什麼辦法,所以我可以彈出所有視圖控制器到VC1,並在這之後自動關閉VC1到mainVC。poptorootviewcontroller並解僱mainViewController
0
A
回答
0
將您的MainVC設置爲根視圖控制器,並在IBAction of done按鈕中使用代碼彈出到MainVC。
[self.navigationController popToRootViewControllerAnimated:YES];
希望它有幫助。
0
爲了彈出視圖控制器
[self.navigationController popToRootViewControllerAnimated:YES];
並關閉呈現視圖控制器
[自dismissViewControllerAnimated:NO完成:零]
0
[self.navigationController setViewControllers:@[mainVC]];
我覺得這個代碼將在你的情況下工作。 iOS開發者庫:
將當前由導航控制器管理的視圖控制器替換爲指定的項目。
- (void)setViewControllers:(NSArray *)viewControllers
animated:(BOOL)animated
必須dissmiss現在視圖控制器後,做到這一點。使用代理
現在讓我們認爲您的導航堆棧是空的,並且您的根目錄是mainVC。你想呈現VC1就可以了。但是你應該給一個委託給mainVC的人,解散VC1後會發生什麼。例如,您從mainVC中呈現VC1。並且你想在推出VC1之後推VC2。沒關係,只是在mainVC中有一個委託,所以在這個方法中
[self.navigationController pushViewController:VC2];
目前的意見並不影響你的導航堆棧。它不在你的堆棧中。所以每次你從控制器中撤銷它,你都應該委派一個控制器來解決解散後會發生的事情。
試試吧。 希望它有幫助。
相關問題
- 1. afterSubmit並不總是解僱
- 2. poptorootviewcontroller並調用方法
- 3. popToRootViewController
- 4. 解僱MediaplayerViewController後不能解僱VIewController
- 5. MainViewController init
- 6. 在mainviewcontroller
- 7. 事件並沒有被解僱
- 8. UITest popToRootViewController
- 9. Page.keyDown未解僱
- 10. UITextview - UIKeyboard解僱
- 11. 解僱uiwebview
- 12. OnTouchListener不解僱
- 13. 解僱GKGameCenterViewController
- 14. ipad - 解僱UIPopoverController
- 15. UIPopoverController解僱
- 16. ScopeGuard解僱
- 17. ConvertBack不解僱
- 18. 解僱popOver
- 19. MBProgressHUD解僱
- 20. 解僱modalView
- 21. AlertDialog不解僱
- 22. 解僱的div,當所有被解僱的包裝被自動解僱
- 23. 如何解決popToRootViewController的錯誤?
- 24. PhoneGap AppDelegate MainViewController
- 25. 問題解僱UIAlertView
- 26. Atapi CallInfoChangeEvent未解僱
- 27. EventHandler沒有解僱
- 28. 如何解僱AlertViewController
- 29. onFinishRender不被解僱
- 30. 的UISearchBar被解僱
添加視圖控制器堆棧,並彈出到第零索引 – Chandru 2015-04-01 12:53:29