为什么UIScreen.main.bounds为每个设备返回(0.0、0.0、320.0、568.0)?

时间:2019-04-23 14:43:06

标签: swift frame bounds uiscreen

上下文:我继承了一个仍在Swift 3中运行的旧版应用程序,AppDelegate的一部分如下所示:

    func application(_ application: UIApplication, didFinishLaunchingWithOptions launchOptions: [UIApplicationLaunchOptionsKey: Any]?) -> Bool {
        // ...some other code here

        window = UIWindow(frame: UIScreen.main.bounds)

        // ...even more other code here

        print(window?.frame, UIScreen.main.bounds)
        return true
    }

无论使用哪种设备-从iPhone 5S到iPad Pro(第三代),输出始终如下:

Optional((0.0, 0.0, 320.0, 568.0)) (0.0, 0.0, 320.0, 568.0)

有人对为什么会发生这种事情有任何想法吗?

更新

进一步的调查显示,LaunchImages和LaunchScreen.storyboard都不是罪魁祸首,而是实际上以某种方式覆盖LaunchScreen.storyboard的png目录。该应用程序的UIWindow绑定以某种方式从这些png的尺寸中获取!!!我正在继续调查,但如果同时有人有任何想法,我将不胜感激,谢谢。

0 个答案:

没有答案