0

アプリがバックグラウンドから戻ってきたら、ナビゲーションコントローラーからメニュービューコントローラーをプッシュしたいと思います。

テストするには— NSStringは、ナビゲーションコントローラーのタイトルを返すため、機能するはずですが、機能しません。常にViewControllerを表示します。

PS絵コンテを使用しています。

AppDelegate.m

- (void)applicationWillEnterForeground:(UIApplication *)application
{    

    NSString * test = self.window.rootViewController.title; // return title of navigation controller

    MenuViewController *mvc = [[MenuViewController alloc] init];
    [(UINavigationController *)self.window.rootViewController pushViewController:mvc animated:NO];
}

プロジェクトをダウンロード

4

1 に答える 1

1

おそらく、(void)applicationDidBecomeActive:(UIApplication *)application メソッドで UI を更新する必要があります。

アップデート。

また、エラーは、ストーリーボードで新しい ViewControllers を Modal として提示するためですが、それらをプッシュする必要があります。その後、呼び出してメインメニューに戻ることができます

[(UINavigationController *)self.window.rootViewController popToRootViewControllerAnimated:NO]; 

プレゼンテーション スタイルを変更するには、ストーリーボードでセグエを選択し、属性インスペクターを選択して、スタイルを「プッシュ」に変更します。

または、モーダル プレゼンテーション スタイルを好む場合は、

[(UINavigationController *)self.window.rootViewController dismissModalViewControllerAnimated:YES];
于 2013-01-23T15:42:08.197 に答える