別の解決策は、次のようなモーダル ビュー コントローラーを提示することです。
- (void)applicationDidBecomeActive:(UIApplication*)application
{
static dispatch_once_t onceToken;
dispatch_once( &onceToken, ^
{
SomeLaunchViewController* launchViewController = [[SomeLaunchViewController alloc] init];
[self.window.rootViewController presentViewController:launchViewController animated:NO completion:NULL];
} );
}
View Controller をモーダルに提示して-application:didFinishLaunchingWithOptions:
もうまくいきませんでした — その時点では「UIStoryboard」メカニズムはまだ完成していないようです。
を使用dispatch_once
すると、アプリケーションがバックグラウンド状態からアクティブになるたびにではなく、モーダル起動画面が 1 回だけ表示されるようになります。
この例では ARC を使用しています。