gpt4 book ai didi

ios - UIWindow 无法填满新设备的屏幕?

转载 作者:行者123 更新时间:2023-12-02 01:37:34 31 4
gpt4 key购买 nike

我正在处理一个大约有 7/8 年历史的旧 Xcode 项目,我已将其迁移到 Objective-C 2.0 并支持 ARC。在我参与该项目之前,该项目不支持自动布局(这是在它发布之前)。我已经设法解决了在更现代的 Xcode IDE (10.2.1) 中运行它时遇到的许多错误/问题。出于测试目的,我已将此代码实现到 AppDelegate 中:

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

self.window = [[UIWindow alloc] initWithFrame:CGRectMake(0, 0, UIScreen.mainScreen.bounds.size.width, UIScreen.mainScreen.bounds.size.height)];
[self.window setBackgroundColor:[UIColor redColor]];

self.window.rootViewController = [UIViewController new];
[self.window makeKeyAndVisible];

return YES;
}

出于某种原因,这给了我这个:

这是我在 iPhone X、iPhone XR 或 iPhone XS Max 上运行时的结果,看起来屏幕的顶部和底部边缘(安全区域)没有被拾取。当我调试 View 层次结构时,它们都没有被拾取,它只显示红色空间?当我将此代码放入新项目中时,它工作正常并填满了所有空间。我想知道,因为这是一个旧项目,所以可能有一个build设置限制 UIWindow 扩展以允许支持新设备?

另外,作为旁注,我已确保 UIWindow 对象不会在其他地方被操纵。

最佳答案

尝试将“启动屏幕界面文件基本名称”(UILaunchStoryboardName) 添加到 Info.plist

这个键的存在似乎告诉系统您本身支持新的设备类型和尺寸类别,因此您的窗口可以填充所有可用区域。

关于ios - UIWindow 无法填满新设备的屏幕?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56949674/

31 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com