2014-10-01 167 views
1

我试图用.xib文件加载应用程序。我不知道为什么我的屏幕变黑......iOS从xib加载时出现黑屏

我的AppDelegate代码:

- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions { 
    // Override point for customization after application launch. 

    MainViewController *mainViewController = [[MainViewController alloc] initWithNibName:@"MainViewController" bundle:nil]; 

    self.window.rootViewController = mainViewController; 

    [self.window makeKeyAndVisible]; 

    return YES; 
} 
+0

'self.window == nil'? – 2014-10-01 17:04:52

+0

是的。它的确是。 – 2014-10-01 17:08:38

+0

我需要初始化它吗?如果是这样,该怎么办? – 2014-10-01 17:11:12

回答

3

当您手动构建的应用程序(不使用故事板),你需要创建自己的窗口。

self.window = [[UIWindow alloc] initWithFrame:[[UIScreen mainScreen] bounds]]; 
self.window.rootViewController = mainViewController; 
[self.window makeKeyAndVisible]; 

当使用故事板,应用程序调用application:didFinishLaunchingWithOptions:在此之前整个过程。这就是在iOS 5中添加UIApplicationDelegate.window的原因,许多现代教程并未向您显示设置步骤。在此之前,拥有该财产只是惯例。