0

アプリをストーリーボードに変換しようとしていますが、いくつか問題があります。以前のモデルでは、ビューをポップアップする必要があるときに呼び出した AppDelegate に「actionClass」を設定できました。

例えば

DOArticleViewController *articleView = [[DOArticleViewController alloc] initWithArticle:article notification: notification nibName:@"DOArticleViewController" bundle:nil];
[[self navigationController] pushViewController:articleView animated:YES];  

しかし、ストーリーボードではもう機能しません。次に、AppDelegate で次のコードを試しました。

id currentController = [[[[self window] rootViewController] navigationController] visibleViewController];
[currentController performSegueWithIdentifier:@"settingsSeque" sender:nil];

rootViewController だけが必要なすべてのシークを持っており、visibleViewController ではない可能性がありますが、一度に 1 ステップずつであるため、とにかくこれが最善であるとは思わないでください。

これで私が見ている唯一のことは、メッセージとアクションなしです:

UINavigationController: 0xb428e00 の外観トランジションの開始/終了の不均衡な呼び出し。

私は今、これを機能させる方法を見つけようとして何時間も費やしていますが、従来の独立した XIB ファイルに戻った方が良いかもしれないことに気付いています....

4

1 に答える 1

0

この質問で与えられた答えで解決しました: ios: Accessing a Navigation Controller from app delegate

Navigation Controllerを取得しようとしましたが、これはnilであり、気づきませんでした。私のナビゲーション コントローラーは rootViewController だったので、それも NavigationController です。

rootViewController を NavigationController にキャストし、「visibleViewController」を呼び出すと、その後は正常に機能しました。

于 2013-07-17T07:09:26.823 に答える