ios - 为什么 iPhone 8 屏幕尺寸报告为 320x480?

标签 ios screen aspect-ratio

我继承了一个应用程序,该应用程序为 iPhone 和 iPad 使用单独的 Storyboard。两者都不使用自动布局。在 viewDidLoad() 中,我记录了 UIScreen.main.bounds 的值。

对于 任何 iPhone(5s 到 X),记录的大小为 320x480。这在 viewDidLayoutSubviews() 之后不会改变。

当我从头开始创建应用程序时,我得到了预期的大小(例如 iPhone 6 到 8 的 375x667)。

我的二手应用程序有什么不同之处可以使屏幕尺寸统一为 1x iPhone 的古老值?

请注意,这与 View 调整大小无关——这是我们正在谈论的屏幕。同样,屏幕比例没有明显的作用。

最佳答案

当您创建一个新项目时,如果它带有启动图像的 Storyboard,则会自动检测大小。

但是,对于使用图像资源的旧项目,您需要提供启动屏幕的尺寸。 IE:屏幕正确尺寸的“默认”图像按照:

https://developer.apple.com/ios/human-interface-guidelines/icons-and-images/launch-screen/

静态启动屏幕图像。名称应为:“Default-XXXh@ResY.png”

其中 XXX 是高度,Y 是分​​辨率。示例:

  • iPhone 6 Plus - 1242px x 2208px - Default-736h@3x.png
  • iPhone 6 - 750px x 1334px - Default-667h@2x.png

关于ios - 为什么 iPhone 8 屏幕尺寸报告为 320x480?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49501363/

相关文章:

javascript - 如何在没有javascript的情况下检测屏幕分辨率?

javascript - 如何确定宽高比是否 > 1 :5?

ios - ios 远程构建代理的 VS2015 Cordova 工具配置无效 - 未找到 taco-remote 包

window - Electron 应用始终始终以全角放在顶部,其他窗口应放在其下方

javascript - 如何在javascript中检测android手机或标签?

Android:从相机捕获的裁剪图像中的纵横比

javascript - 判断图片宽高比是否合适

ios - GameplayKit - 关于在组件之间发送消息的困惑

ios - UISnapBehavior 的这种内存泄漏是误报吗?

ios - 包含应用程序剪辑的 Xcode 项目导出存档错误