加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 百科 > 正文

objective-c – 应用程序窗口预计在应用程序启动警告结束时具有

发布时间:2020-12-16 03:12:16 所属栏目:百科 来源:网络整理
导读:我已经被这个警告困扰了几个小时了.我已经看了周围的答案,尝试了所有我发现,找不到解决方案.这是我的代码的崩溃,默认情况下生成的 Xcode. 这是在我的AppDelegate - (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictio
我已经被这个警告困扰了几个小时了.我已经看了周围的答案,尝试了所有我发现,找不到解决方案.这是我的代码的崩溃,默认情况下生成的 Xcode.

这是在我的AppDelegate

- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions {
    self.window.rootViewController = self.navigationController;
    [self.window makeKeyAndVisible];
    return YES;
}

我在main.m(根据this answer)

int main(int argc,char *argv[])
{
    @autoreleasepool {
        int retVal = UIApplicationMain(argc,argv,nil,NSStringFromClass([AppDelegate class]));
        return retVal;
    }
}

我的MainWindow.xib中的所有连接都已正确连接.所以我现在在亏损.有什么可以丢的吗?提前致谢!

解决方法

在应用程序中设置窗口的rootViewController是奇怪的:didFinishLaunchingWithOptions:如果您有一个MainWindow.xib.通常一个项目遵循三个模板之一:

>一些项目有一个MainWindow.xib.目标的“主界面”在目标的“摘要”选项卡(或其Info.plist)中设置为“主窗口”.这个xib的文件的所有者是UIApplication. xib包含AppDelegate的一个实例,连接到文件的所有者代理插座. xib还包含一个UIWindow,它的rootViewController插座连接到一个UIViewController(或子类,如UINavigationController),它也在xib中.当应用程序委托接收到应用程序:didFinishLaunchingWithOptions:消息时,xib被完全加载,因此窗口及其根视图控制器已经建立.
>其他项目没有MainWindow.xib.目标的“主界面”为空.相反,UIApplicationMain函数创建一个AppDelegate的实例,将其设置为UIApplication的委托,并将其发送给应用程序:didFinishLaunchingWithOptions:message.应用程序委托通过创建一个UIWindow来处理该消息,创建一个视图控制器(或几个),并设置窗口的rootViewController属性.默认版本如下所示:

- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions
{
    self.window = [[UIWindow alloc] initWithFrame:[[UIScreen mainScreen] bounds]];
    // Override point for customization after application launch.
    self.viewController = [[ViewController alloc] initWithNibName:@"ViewController" bundle:nil];
    self.window.rootViewController = self.viewController;
    [self.window makeKeyAndVisible];
    return YES;
}

>一些项目有一个MainStoryboard.storyboard.我不会详细描述这一点,因为它与你的问题似乎不相关.

您所描述的问题使您听起来像您使用的是第一个模板的一半,而第二个模板的一半.那不行.你需要决定你正在采取哪种方式,并且全面进入.

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读