52

目前正在开发一个通用的 SpriteKit 项目。我将支持以下设备:

iPhone 4/s, iPhone 5/c/s, iPhone 6, iPhone 6+

iPad non-ret, iPad 视网膜

在此处输入图像描述

我对 iPhone 部分感到困惑。对于 iPhone 的 4 种不同屏幕分辨率,我的背景精灵已经有 4 个版本。但是哪个去哪个?

我知道 3x 用于 6+,我认为 5/c/s 用于 Retina 4 2x,但我不知道 iPhone4/s 和 6 去哪里。有人知道吗?

旁注,当我在 xcassets 文件中创建启动图像时,会显示这些选项,这些选项基本上包含我支持的所有设备。只是想知道为什么在创建图像集时不是这种情况在此处输入图像描述

另外,你们如何为通用应用程序创建图像/精灵?现在新的 iPhone 6 和 6 plus 已经发布了,我还有 2 个分辨率需要支持,这仍然让我感到困惑,因为我还是个初学者。

4

5 回答 5

87

这有点令人困惑 - 这是我的理解方式(这是参考顶部图像):

  • 1x图像用于原始 iPhone 通过 3GS -“标准”分辨率设备(3.5 英寸屏幕)

  • 2x图像用于 iPhone 4 和 4S(3.5 英寸 Retina 屏幕),也用于 iPhone 6。

  • Retina 4 2x适用于 iPhone 5 和 5s(4" Retina 屏幕)

  • 3x图像适用于新款 iPhone 6+(5.5 英寸超视网膜 [3x] 屏幕)

我相信 iPhone 6(4.7" 屏幕)将使用 Retina 4 2x 图像,但我必须对其进行测试。

旁注,当我在 xcassets 文件中创建启动图像时,会显示这些选项,这些选项基本上包含我支持的所有设备。只是想知道为什么在创建图像集时不是这种情况

如果你比较这两张图片,下面的那一张就拥有上面那张的所有东西,除了 1x iPhone 图形。如果您只支持 iOS 7 及更高版本,则不需要这样做,因为 iOS 7 不能在任何非 Retina 手机形式的设备上运行。老实说,我不明白为什么顶部图像有一个 1x iPhone 表单图形选项 - 可能是因为您选中了侧边栏中的“iPhone”框?

另外你们如何为通用应用程序创建图像/精灵

对于大多数非全屏图像(如徽标),您实际上只有3种分辨率需要支持 - 标准 (1x)、Retina (2x) 和 iPhone 6+ (3x)。这些只是不同质量的图像,而不是真正不同的尺寸。因此,如果您在标准设备上有 10x10 的图像,这意味着您需要在 Retina 设备上使用 20x20 图像,在 iPhone 6+ 上需要 30x30 图像。在所有设备上,它们将显示为 10x10 图像。

我用来管理不同分辨率图标的一个很棒的工具是iConify

我以我需要的最大尺寸创建它们(30x30 [@3x] 用于我希望在设备上为 10x10 的图像),然后将其保存为 png 并将副本大小调整为 20x20 [@2x] 和 10x10 [标准]。更好的解决方案是创建和使用矢量图形,它可以更好地调整到任何大小。

于 2014-09-28T14:09:13.937 回答
36

在分辨率为 320 x 480 的 1x 位置图像中。
在分辨率为 640 x 960 的
2x 位置图像中。在 Retina 4 中,分辨率为 640 x 1136的 2x 位置图像。
在分辨率为 1242 x 2208 的 3x 位置图像中。

Retina 4 2x 的图像将放大到 750 x 1334 分辨率。
图像 3x 将缩小到 1080 x 1920 分辨率。

您还可以访问此链接以获取启动屏幕图像: http:
//www.paintcodeapp.com/news/iphone-6-screens-demystified
http://www.paintcodeapp.com/news/ultimate-guide-to-iphone-决议


对于所有其他图像分辨率和大小:
https ://developer.apple.com/ios/human-interface-guidelines/graphics/launch-screen/ https://developer.apple.com/ios/human-interface-guidelines/图形/图像大小和分辨率/ https://developer.apple.com/ios/human-interface-guidelines/graphics/custom-icons/


如何使用 Image.xcassets:
https ://www.youtube.com/watch?v=_36Y6rDcKP0&list=PLXCowKcXA​​VgrCe2Lezv0acRf4adQLshv2

希望这会更有帮助。

于 2014-10-04T09:06:40.873 回答
9

如果您的启动图像在 xcasset 文件中,您可以在 Xcode 6 中执行以下操作。

选择启动图像资源,选择特定分辨率(1x、2x、Retina 4 等)并打开属性检查器(见下图)。

在此处输入图像描述

在“图像”部分下,您将有一个“预期大小”属性。

在此处输入图像描述

于 2015-03-24T22:45:02.920 回答
6

在 images.xcassets 中,您可以通过右键单击添加不同的设备支持,如快照所示

在此处输入图像描述

编辑:好吧,当我将 n 拖放图像拖放到占位符时,它似乎不起作用。它变得一团糟,如下所示

在此处输入图像描述

我不知道为什么它在我的 Xcode 6.4 上表现得很奇怪。

编辑#2:

我在这里看到了苹果的一个错误。正如您在上面的第一张图片中看到的那样,我可以在右键单击时选择“通用”以及任何设备。但是通过属性检查器,我可以正确选择“通用”或特定设备,如此处所示

在此处输入图像描述

编辑#3:

Xcode 7中,属性检查器已更改,现在它提供与右键单击相同的选项。因此,现在它提供全选而不是“通用”或特定设备。

在此处输入图像描述

于 2015-07-20T11:25:15.463 回答
4

有一个工具:AVXCassets Generator,您可以使用它一键直接为所有图标和图像生成 XCAssets 文件。

希望你会喜欢。

在此处输入图像描述

于 2016-04-29T12:14:09.497 回答