0

我正在使用一个UIStoryboard. 我创建了我的应用程序空,然后我添加了一个故事板。故事板被设置为项目设置中的主故事板,也被设置为 Info.plist 中的“主故事板文件基础名称”。

我的应用程序委托只是返回YES而没有任何其他代码。

我的main.m包括这行代码:

return UIApplicationMain(argc, argv, nil, NSStringFromClass([ARGAppDelegate class]));

我在控制台中收到此消息:

应用程序窗口应该在应用程序启动结束时有一个根视图控制器

我的视图控制器在 UIStoryboard 中,作为初始视图控制器。

只是想知道我在这里做错了什么......

我的 AppDelegate 代码:

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

这就是我拥有的所有代码,如果您使用情节提要,则不需要创建窗口,对吗?

感谢您的帮助,不胜感激!


更新:

我实际上更改了我的 AppDelegate 代码,但仍然没有任何区别:

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

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

    UIStoryboard *storyboard = [UIStoryboard storyboardWithName:@"MainStoryboard_iPhone" bundle:[NSBundle mainBundle]];
    UIViewController *initViewController = [storyboard instantiateViewControllerWithIdentifier:@"ARGViewControllerID"];

    NSLog(@"%@", initViewController); // Returns a valid ARGViewController object

    [self.window setRootViewController:initViewController];
    [self.window makeKeyAndVisible];
    [self.window makeKeyWindow];

    return YES;
}
4

3 回答 3

1

如果-applicationDidFinishLaunching:withOptions:未在代码中设置窗口或情节提要,系统查找的下一个位置是 info.plist 中的默认 XIB 或情节提要。项目信息中的“默认故事板”字段要么为空,要么指向不存在的 .storyboard 文件。单击树中的项目,然后单击“摘要”选项卡,并在字段中填写故事板文件的名称。

于 2013-01-04T09:17:48.683 回答
1

Application windows are expected to have a root view controller at the end of application launch

听起来你没有在故事板的开头嵌入导航控制器

于 2013-01-04T12:47:53.420 回答
0

在浏览论坛和问题并使用代码后无法找到解决方案,我切换到 xibs。自从 4 小时前我进行过渡以来,我就对它感到满意。我希望我再也不用看到另一个充满错误且难以使用的故事板文件了!

于 2013-01-04T12:37:34.647 回答