0

私のdidFinishLaunchingWithOptionsアプリケーションのコードは

   _homeViewController = [[HomeViewController alloc]init];
    UINavigationController*  _navigationController = [[UINavigationController alloc] initWithRootViewController:_homeViewController];
    [self.window setRootViewController:_navigationController];
    [_navigationController setNavigationBarHidden:YES];
    [self.window makeKeyAndVisible];

にはHomeViewController、2 つのボタンがあります。ボタンが押された場合、ViewController を提示しています。button1 が押された場合、コードは

if (_detailsViewController == nil)
            _detailsViewController = [[DetailsViewController alloc]init];

       [self.navigationController presentModalViewController:_detailsViewController animated:YES];

detailsViewController で iPhone のホーム ボタンを押すと、同じクラスで を使用しUIApplicationDidEnterBackgroundNotificationてメソッドを呼び出し、次の行を実行します。

[self.navigationController popToRootViewControllerAnimated:YES];

そのため、アプリケーションを再度開くと、HomeViewController が表示されると思いましたが、機能しません。私を助けてください !!

4

2 に答える 2

0

ルート ビューにポップできない理由は、間に ViewController を提示しているようです。ViewController がナビゲーション コントローラと一緒にある場合、つまり、ViewController がナビゲーション コントローラとしてプッシュされている場合、ポップできます。ルートView Controllerに

于 2012-09-05T13:51:15.227 に答える
0

バックグラウンドに入るときは状態情報を保存し、フォアグラウンドに再び入るときはその情報を確認し、フラグが設定されている場合はアニメーションなしでそこにポップします。

于 2012-07-28T14:06:09.670 に答える