为啥删除 UILaunchStoryboardName 会调整 ios 应用程序窗口大小?

Posted

技术标签:

【中文标题】为啥删除 UILaunchStoryboardName 会调整 ios 应用程序窗口大小?【英文标题】:Why delete UILaunchStoryboardName would resize the ios app window size?为什么删除 UILaunchStoryboardName 会调整 ios 应用程序窗口大小? 【发布时间】:2016-03-09 12:07:03 【问题描述】:
    创建一个 ios 单视图项目。 删除情节提要。

    创建一个视图控制器并使用以下代码对其进行初始化。

    
    self.window = [[UIWindow alloc] initWithFrame:[[UIScreen mainScreen] bounds]];
    ViewController* controller = [[ViewController alloc] init];
    self.window.rootViewController = controller;
    BNRHypnosisView* view = [[BNRHypnosisView alloc] initWithFrame:[[UIScreen mainScreen] bounds]];
    controller.view = view;
    self.window.backgroundColor = [UIColor whiteColor];
    [self.window makeKeyAndVisible];
    

    删除 info.plist Launch screen interface base name 这是UILaunchStoryboardName 条目。

    应用程序窗口大小将小于未删除的窗口大小。 为什么LaunchScreen.xib被删除后会有这样的差异? IMO,编译器或链接器应该报告错误,因为 xib 丢失。

【问题讨论】:

【参考方案1】:

Launch 故事板的存在和使用向 iOS 表明您已有意考虑您的应用在所有设备上的外观。这类似于 568 像素启动图像在发布时表明 iPhone 支持的方式 - 否则您的应用程序将看起来像您截取的屏幕截图。 Apple 最近似乎越来越依赖 Launch 故事板,以允许开发人员表明他们的应用适用于所有尺寸等级、方向和设备,因为 iPad 多任务模式也需要使用它。

其他参考资料:

How to develop or migrate apps for iPhone 5 screen resolution? Invalid Bundle Error - “requires launch story board”

【讨论】:

但是我已经删除了 stoyboard 文件。 所以添加回来。是你的问题吗,如何恢复原样? 我的意思是,既然我删除了它,为什么它仍然可以使用。 对我来说,它看起来不起作用,这就是您看到窗口大小调整的原因。 我的意思是我删除了情节提要文件而不是 plist 中的 xml 条目。我可以用任何值命名条目,它本身的值无关紧要,情节提要文件无关紧要,但条目本身很重要。

以上是关于为啥删除 UILaunchStoryboardName 会调整 ios 应用程序窗口大小?的主要内容,如果未能解决你的问题,请参考以下文章

为啥可以删除任何函数,但只能删除默认的特殊成员函数? [复制]

为啥删除 UITableView 行时会出现错误?

为啥“合并后删除分支”只删除远程GIT分支而不是本地?

为啥***删除后指针指向0? [复制]

为啥我不能删除一个项目?

为啥我不能删除这个表格?