“Application windows are expected to have a root view controller at the end of application launch” がログに出力された場合の対処方法

iOS 4 以降は、UIWindow の rootViewController プロパティで、ビューコントローラを直接指定する方法が推奨されているとのこと。
iOS 6 SDK で以前の方法を使うと、画面の回転が正しく効かないなど不具合の原因となるらしい。

1
2
3
4
5
6
7
8
9
10
11
// iOS 6 以降の推奨
- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions
{
 :
(省略)
 :
    self.window.rootViewController = [[UINavigationController alloc] initWithRootViewController:(UIViewController を指定する)];
 
    [self.window makeKeyAndVisible];
    return YES;
}

参照: 既存プロジェクトの iOS 6 SDK 移行

コメントを残す

メールアドレスが公開されることはありません。