2

我已经尝试解决这个问题超过 14 个小时了......我真的希望有人可以帮助我加载我的故事板。每次我以非编程方式尝试它时,它都会决定将其保持为黑屏(而不是加载屏幕。我检查它是否在初始视图控制器中。但什么也没有。所以我想,也许我需要以编程方式进行。如您所见,我已经正确合成了它们。仍然没有。我做错了什么(没有 xcode 错误输出)。

Appdelegate.h

#import <UIKit/UIKit.h>
@class ViewController;
@interface AppDelegate : UIResponder <UIApplicationDelegate> {
        UIWindow *window;
    UIViewController *viewController;
}

@property (strong, nonatomic) UIWindow *window;
@property (strong, nonatomic) UIViewController *viewController;
@end

AppDelegate.m

#import "AppDelegate.h"
#import "ViewController.h"


@implementation AppDelegate

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

self.window.rootViewController = viewController;
    [self.window makeKeyAndVisible];
    return YES;
}
- (void)applicationWillTerminate:(UIApplication *)application {
    // Save data if appropriate
}
4

2 回答 2

12

如果您使用的是 Storyboard,则应删除您在应用委托方法中编写的代码;将其更改为如下所示:

- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions
{
    return YES;
}

接下来查看您的构建目标属性(在您的项目导航器中,单击最顶部的项目名称)。您的情节提要是否在“摘要”窗格的“主情节提要”部分中选择?

最后转到情节提要并确保您的视图控制器被选为初始视图控制器。选择视图控制器场景并验证属性检查器窗格中的“初始场景:是初始视图控制器”框是否已选中。

如果所有这些步骤都已经过验证并且您仍然看到一个空白屏幕,那么您的视图控制器中可能存在错误。尝试将一个全新的视图控制器拖到情节提要中,添加一个标签,并将其设置为初始视图控制器。如果您能够看到该场景启动,则您的原始视图控制器存在问题(而不是故事板启动的问题)。

于 2012-10-26T08:34:23.913 回答
1

首先,您的viewController属性只是一个零,它没有在任何地方初始化。有了这个self.window.rootViewController = viewController;,你只需将 nil 传递给rootViewController.

在 Interface Builder 中,您应该有箭头指示您的初始视图控制器 - 如此图片或在 Attributes Inspector 中所见,如此处所示

你也可以在这里阅读关于故事板的优秀教程

于 2012-10-26T08:16:33.883 回答