在FinishedLaunching中设置RootViewController时,iOS应用程序不会旋转

时间:2015-01-07 18:06:19

标签: ios objective-c

所以问题是 - 这是新的,这曾经在iOS 7中工作 - 当我注释掉“FinishedLaunching”时,它旋转得很好但是当我覆盖这个“FinishedLaunching”函数来创建“窗口”时我自己,它无法旋转。这真的很奇怪。有什么想法吗?

我想使用FinishedLunching的原因是因为有时我想要一个不同的viewController作为初始视图控制器。

以下是我的“FinishedLunching”中的代码

 - (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions
{
     self.window = [[UIWindow alloc] initWithFrame:UIScreen.mainScreen.bounds];

     UIStoryboard *storyboard = [UIStoryboard storyboardWithName:@"MainStoryboard" bundle:nil];

     UIViewController *viewController = // determine the initial view controller here and instantiate it with [storyboard instantiateViewControllerWithIdentifier:<storyboard id>];

     self.window.rootViewController = viewController;
     [self.window makeKeyAndVisible];

     return YES;
}

1 个答案:

答案 0 :(得分:1)

问题是您正在使用

创建一个新窗口
self.window = [[UIWindow alloc] initWithFrame:UIScreen.mainScreen.bounds];

当它自动为你设置的AppDelegate一个完全可以使用的时候,只需使用self.window而不用alloc-initing一个新的