iPhone 6 (Plus) 屏幕尺寸

Posted

技术标签:

【中文标题】iPhone 6 (Plus) 屏幕尺寸【英文标题】:iPhone 6 (Plus) screen size 【发布时间】:2015-01-31 19:46:45 【问题描述】:

有很多关于 iPhone 6 和 iPhone 6 Plus 屏幕尺寸的文章和问题。 This article 提供了很好的解释。

但是,在模拟器中测试我的应用时,我感到很困惑。 我在AppDelegate 中有以下代码。

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

    UIScreen *screen = [UIScreen mainScreen];
    NSLog(@"Screen width %.0f px, height %.0f px, scale %.1fx",
          (double) screen.bounds.size.width,
          (double) screen.bounds.size.height,
          (double) screen.scale);

    return YES;

我从各种设备的 ios 模拟器中得到以下结果:

iPhone 4S:Screen width 320 px, height 480 px, scale 2.0x

iPhone 5:Screen width 320 px, height 568 px, scale 2.0x

iPhone 5S:Screen width 320 px, height 568 px, scale 2.0x

iPhone 6:Screen width 320 px, height 568 px, scale 2.0x

iPhone 6 Plus:Screen width 320 px, height 568 px, scale 2.0x

结果适用于 iPhone 4S、iPhone 5 和 iPhone 5S。但是,我预计 iPhone 6 和 iPhone 6 Plus 的屏幕尺寸会更大,我也预计 iPhone 6 Plus 的屏幕尺寸会达到 3.0。怎么了?

感谢您的解释。

【问题讨论】:

您可能忘记包含适用于 iPhone 6 和 6 Plus 的启动图像。因此,该应用程序只是基于 iPhone 5/5S 版本进行了升级,然后就是您在应用程序中“看到”的大小。 【参考方案1】:

您似乎没有为您的应用提供正确的启动图像。当没有设置正确的启动图像时,应用程序将像在 iPhone 5/5S 上一样运行,这就是为什么您在登录时会遇到这些令人困惑的结果。 iPhone 6 屏幕尺寸为 375x667 像素比例 x2,iPhone 6+ 414x736 像素比例 x3。所以,如果你想为 iPhone 6 设置启动图像,它应该分别有 750x1334 像素大小和 iPhone 6+ 的 1242x2208 大小。祝你好运!

编辑:

正如 rmaddy 在 cmets 中提到的,最好使用具有适当布局约束的启动屏幕故事板来适应所有屏幕,而不是为所有屏幕使用一堆图像(这也会增加应用程序的大小)。

【讨论】:

想为update info添加链接 不要使用所有不同的启动图像,只需使用一个启动屏幕故事板。 启动屏幕为 iphone x 选择了错误的图像,我很累但无法为启动屏幕选择设备特定的图像。总是选错人。【参考方案2】:

您必须在 iPhone 6 和 6+ 的 Imageasset 中添加具有适当分辨率的启动图像。

如果您不知道分辨率,请检查右侧导航器 > 选择第三个选项。现在在截图中你可以看到Expected size 1242x2208 pixel

请查看随附的屏幕截图。一旦你添加了所有图片,那么只有你会得到正确的。

对于 iPhone 6,它会记录

屏幕宽度 375 像素,高度 667 像素,缩放 2.0x

6+

屏幕宽度 414 像素,高度 736 像素,缩放 3.0x

【讨论】:

我有这些图片。对于 iPhone 6+,我的屏幕尺寸仍然计算为 320 像素 @quantumpotato 我也有同样的问题。添加此图像后,我仍然有同样的问题。您是否找到了另一种解决方法? 我的启动图像具有所需的精确分辨率。还是有问题 退出 XCode > 从模拟器中删除应用程序 > 清理构建 > 也从垃圾中删除派生数据 >。再试一次。【参考方案3】:

在您的项目中添加一个启动屏幕,-> 文件 -> 新文件 -> 在 iOS 用户界面中 -> 启动屏幕。 然后在您的应用程序的 General View 中,在 Launch Screen File 字段中选择 LaunchScreen.xib。 再试一次你的代码,你就可以看到真正的尺寸了。

【讨论】:

【参考方案4】:

就我而言,我在 iPhone 中找到了有关显示的设置。 (设置 - 显示和亮度 - 显示缩放)。

如果您的设置为“缩放”,则屏幕宽度将为 320 像素。

【讨论】:

为什么我的 iPhone 6s 报告 320 x 568 但 iPhone 6s 的模拟器很好,这是没有道理的。正是这种设置产生了巨大的变化。我已经在使用启动屏幕故事板了。【参考方案5】:

对于可能提出问题的其他人:

确保您的启动图像名称与项目中的任何其他图片名称不同,否则 Xcode 可能会混淆并返回 iPhone 5 的宽度和高度。

【讨论】:

以上是关于iPhone 6 (Plus) 屏幕尺寸的主要内容,如果未能解决你的问题,请参考以下文章

iPhone 6 plus 的屏幕尺寸问题

iphone 6 和 6 plus 尺寸缩放

iPhone屏幕尺寸/导航高度

Phonegap + iphone 6 屏幕尺寸问题

所有 iOS 屏幕尺寸的启动屏幕图像尺寸

处理屏幕尺寸的正确方法