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

时间:2013-11-06 18:21:06

标签: ios objective-c

我的应用启动时出现上述错误。以下代码来自我的AppDelegate .h文件

#import <UIKit/UIKit.h>

@interface TableViewAppDelegate : NSObject <UIApplicationDelegate> {

UIWindow *window;
UINavigationController *navigationController;
}

@property (nonatomic, retain) IBOutlet UIWindow *window;
@property (nonatomic, retain) IBOutlet UINavigationController *navigationController;

@end

以下内容来自我的AppDelegate实施文件.m applicationdidfinishlaunchingwithoptions

- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions {

//Configure and show the window
[window addSubview:[navigationController view]];

[window makeKeyAndVisible];

return YES;
}

6 个答案:

答案 0 :(得分:16)

在你的app delegate中添加:

self.window.rootViewController = navigationController;

答案 1 :(得分:3)

如果您开始使用空模板并添加了故事板,则需要执行以下操作:

  • 在项目设置 - &gt;常规中,选择故事板作为主界面

  • 您还需要从您的 AppDelegate.m中删除以下行

    self.window = [[UIWindow alloc] initWithFrame:[[UIScreen mainScreen] bounds]];
    //在应用程序启动后覆盖自定义点 self.window.backgroundColor = [UIColor whiteColor];
    [self.window makeKeyAndVisible];

答案 2 :(得分:1)

我克服了这个问题的方法之一是通过以下步骤:

1)启动Xcode并选择Empty Application

2)现在转到文件 - &gt; UI下的新应用

3)给它起个名字 - &gt; MyView的

4)现在创建一个自定义类 - &gt; MyView的

5)立即转到.xib文件并单击文件所有者,然后在类属性下输入 - &gt; myView作为自定义类

6)现在添加一个按钮并创建一个动作

7)它应该工作

答案 3 :(得分:0)

选择目标项目。然后在摘要部分的下拉列表中设置您的主板名称。

答案 4 :(得分:0)

也许它确实听起来很愚蠢,但我收到了这个错误,因为我将根视图控制器与一个按钮的事件相关联。删除此连接后,此问题已消失。

答案 5 :(得分:0)

Swift 2 solution that worked for me :

Insert the code below in AppDelegate -> didFinishLaunchingWithOptions

self.window!.rootViewController = storyboard.instantiateViewControllerWithIdentifier("YourRootViewController") as? YourRootViewControllerClass