私はプロジェクトにnavigationControllerを持っていても私のプロジェクト全体がpresentViewControllersに基づいていて、複数のレベルにナビゲートしているシナリオがあると私はpopToRootViewControllerを使うことができます。レベルが1つしかない場合は、現在のView Controllerを終了してルートビューコントローラに戻ることができますが、複数のレベルになったときにルートビューコントローラに戻る方法を知ることはできません。誰かアドバイスをお願いしますか?iOS:presentViewControllerアーキテクチャのpopToRootViewController
私は次のコードを使用しようとしましたが、私のアプリケーションがクラッシュしました!
- (IBAction)mainMenuButtonPressed:(id)sender {
MyAppDelegate *delegate = (MyAppDelegate *)[[UIApplication sharedApplication] delegate];
[self presentModalViewController:delegate.window.rootViewController animated:YES];
}
ありがとう。
をあなたは正しいです!それは素晴らしいことです!それはうまくいったが、トップにないときにrootviewcontrollerが却下されたのはなぜだろうか? – applefreak
これは、root viewcontrollerによって提示されているviewcontrollerを却下するとすぐに、このViewControllerが提示しているすべてのモーダルView Controllerを自動的に消滅させるためです。基本的にこれは私が推測する単なる再帰呼び出しです。 – Lukas
面白いですが、コントローラが却下されるような気がしません!それは直接私はrootviewcontrollerになっている! – applefreak