【问题标题】:Updating for high resolution in iOS8在 iOS8 中更新高分辨率
【发布时间】:2014-10-02 22:20:53
【问题描述】:

我正在将我的应用程序转换到 iOS8,我正在尝试确定是否需要在代码级别对屏幕大小进行任何调整。目前我使用这种方法来获取屏幕大小:

[UIScreen mainScreen].bounds.size

例如,在 iPad 上,这将返回 1024x768。 iPhone 5 将返回 568x320。比例因子明显取决于视网膜能力。

  1. 我是否应该期望这些数字会在 iPhone 6 和 iPhone 6 加?

  2. 我目前正在为 Retina 提供 @2x 图像 展示。这些适用于 iPhone 6 吗?由于屏幕是 比 iPhone 5 大,这是否意味着它们会稍微 模糊?或者这是无法检测到的?我需要放大@2x 图片吗?

  3. 我听说在 iPhone 6 Plus 上使用 @3x。这是我需要进行的唯一真正更改以支持更高分辨率吗?

【问题讨论】:

    标签: ios ios8 retina-display


    【解决方案1】:

    我是否应该期望这些数字会在 iPhone 6 和 iPhone 6 Plus 上发生变化?

    [UIScreen mainScreen].bounds.size 返回的值对于 6 和 6 plus 当然会有所不同——毕竟它们的屏幕尺寸不同。另请注意,6 plus 可以进入“缩放视图”(靠近this page 的底部),在这种情况下,我相信 UIScreen 会返回不同的值。

    我目前正在为 Retina 显示器提供 @2x 图像。这些适用于 iPhone 6 吗?由于屏幕比 iPhone 5 大,那是不是意味着它们会有点模糊?或者这是无法检测到的?我需要放大我的@2x 图片吗?

    您现在需要@3x 图像 - iPhone 6+ 具有更高密度的显示屏,因此您的@2x 图像会模糊。

    我听说在 iPhone 6 Plus 上使用 @3x。这是我需要进行的唯一真正更改以支持更高分辨率吗?

    确保您的应用在缩放到新的屏幕尺寸时能够正常运行和显示。要使您的应用程序能够以全分辨率运行(而不是“缩放模式”),您需要为设备添加启动图像。有关如何执行此操作的信息,请参阅 this Stack Overflow question

    【讨论】:

    • 能否请您扩展您的答案,具体包括如何为 6/6+ 添加高分辨率启动图像?命名约定是什么?
    • @ShaunBudhram 你在使用 .xcassets 文件吗?
    • 否 - 我目前正在使用实际的启动图像文件(默认 *.png)。我已经阅读了新的 xib 启动文件。这是支持更高分辨率的要求,还是我可以添加 Default@3x.png 以启用高分辨率?
    • @ShaunBudhram 不,恐怕你不能那样做。我一直在寻找一种方法来以一种神奇的方式命名它,我认为你不能。我认为您将不得不使用资产目录。请参阅答案中的链接。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2016-04-22
    • 1970-01-01
    • 2012-09-26
    • 2016-08-17
    • 2016-09-10
    • 1970-01-01
    • 2011-04-07
    相关资源
    最近更新 更多