モーダルビュー「レベル1」を呼び出すメインメニュー「レベル0」があり、別のモーダルビュー「レベル2」を呼び出すアプリのワークフローをスケッチしています。
私はこれを機能させることができ、問題はありません。また、次を使用してスタック全体を閉じることができます。
[[[self parentViewController] parentViewController] dismissModalViewControllerAnimated:YES];
モーダルビューの「レベル2」。
私の問題は、モーダルビュー「レベル2」にナビゲーションバーがある場合、スタック全体を閉じることができないことです。上にリストしたコードは1レベルしか戻らないので、実際にはこれを行った場合と同じように機能します。
[self dismissModalViewControllerAnimated:YES];
モーダルビューの「レベル2」。
概要:モーダルビュー「レベル1」が以下を使用してモーダルビュー「レベル2」を呼び出す場合:
Level2 *level2 = [[[Level2 alloc] initWithNibName:@"Level2" bundle:nil] autorelease];
[self presentModalViewController:portalMainController animated:YES];
スタック全体を閉じて、メインメニュー(レベル0)に戻ることができます。しかし、「レベル1」が次のようなナビゲーションバーで「レベル2」を呼び出す場合:
Level2 *level2 = [[[Level2 alloc] initWithNibName:@"Level2" bundle:nil] autorelease];
UINavigationController *navigationController = [[UINavigationController alloc] initWithRootViewController:level2];
[self presentModalViewController:navigationController animated:YES];
[navigationController release];
「レベル0」に戻ることはできません。「レベル1」に戻るだけです。
助言がありますか?