1

私のアプリは、起動時、スプラッシュ画面中にインターネットからデータをダウンロードします。バックグラウンドからフォアグラウンドに入るとき(ユーザーがバックグラウンドからアプリを開いたとき)も同じです。

アプリが開いているとき、ユーザーはダウンロードされた情報を読むためにいくつかのビューをプッシュすることができます。

アプリがバックグラウンド状態から開いているときに、最初のビューが表示されるまでviewControllersがポップされるようにしたい... AppDelegateで次のようなことをしたい:

while ([self.view isNotMainView]) //of course this method doesn't exists
     { [self.navigationController popViewControllerAnimated:NO]; }

出来ますか?

ありがとう

4

3 に答える 3

3

使用するだけです:

[self.navigationController popToRootViewControllerAnimated:NO];

お役に立てば幸いです。

于 2011-09-06T15:41:57.383 に答える
1

次のリンクがお役に立てば幸いです...

UITabBarControllerの下でUINavigationControllerスタックをどのようにポップしていますか?

参照または現在のナビゲーションコントローラーをappdelegateに保持するか、これをviewDidUnloadまたはviewWillDisapperに書き込んで、アプリケーションがバックグラウンドに移行したときにナビゲーションをルートにポップすることができます。

于 2011-09-06T15:43:59.937 に答える
0

参照がぶら下がっている場合は、ビューをメインビューと比較することができます。

while (self.view != myMainView)

self.viewなど(これも正しい参照であると想定しています。)

于 2011-09-06T15:41:18.490 に答える