Xcode 6 – 用于通用映像支持的xcassets

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

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

iPad非Ret,iPad视网膜

在这里输入图像描述

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

我知道3x是为6+,我认为5 / c / s去视网膜4倍,但我不知道iPhone4 / s和6去哪里。 有人知道吗?

值得一提的是,当我在我的xcassets文件里创build一个Launch Image时,我显示了这些选项,它们基本上包含了我所支持的所有设备。 只是想知道为什么这不是创build一个图像集的情况下 在这里输入图像描述

另外你们如何为通用应用程序创build图像/精灵? 现在新的iPhone 6和6 plus已经出来了,我还有两个解决scheme来支持,这对我来说仍然是一个令人困惑的问题,因为我还是一个初学者。

这有点令人困惑 – 下面是我的理解(这是参考上面的图片):

  • 1x图像是通过3GS的原始iPhone – “标准”分辨率设备(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图像,但我将不得不testing它。

值得一提的是,当我在我的xcassets文件里面创build一个Launch Image时,我显示了这些选项,它们基本上包含了我所支持的所有设备。 只是想知道为什么这不是创build一个图像集的情况下

如果您比较这两个图像,则较低的图像具有较高的图像,除了1x iPhonegraphics。 如果您仅支持iOS 7及更高版本,则不需要这样做,因为iOS 7不能在任何非Retina电话表单设备上运行。 说实话,我不明白为什么顶级图像有一个1x iPhone的graphics选项 – 也许是因为你检查了侧边栏中的“iPhone”框?

另外你们如何创build一个通用的应用程序的图像/精灵

对于大多数非全屏图像(如徽标),您实际上只有3种分辨率支持 – 标准(1x),视网膜(2x)和iPhone 6 +(3x)。 这些只是图像的不同质量 ,没有真正不同的大小。 因此,如果您在标准设备上有10×10的图像,那意味着您需要Retina设备上的20×20图像和iPhone 6 +上的30×30图像。 在所有设备上,它们将显示为10×10图像。

iConify是一款用于pipe理不同图标分辨率的工具 。

我创build它们是我需要的最大尺寸(30×30 [@ 3x]),然后将其保存为PNG,然后将其复制为20×20 [@ 2x]和10×10 [标准]。 一个更好的解决scheme是创build和使用vectorgraphics ,这将更好地调整任何大小。

在分辨率为320 x 480的1x场景图像中。
分辨率为640 x 960的2x地点图片。
在视网膜4倍分辨率640 x 1136的地方图像。
在分辨率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-resolutions

对于所有其他图像的分辨率和大小:
https://developer.apple.com/ios/human-interface-guidelines/graphics/launch-screen/ https://developer.apple.com/ios/human-interface-guidelines/graphics/image-size-and-解决scheme/ https://developer.apple.com/ios/human-interface-guidelines/graphics/custom-icons/

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

希望这会更有帮助。

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

select启动图像资产,select一个特定的分辨率(1倍,2倍,视网膜4等),并打开属性检查器(见下图)。

在这里输入图像描述

在“图片”部分下,您将拥有“预期大小”属性。

在这里输入图像描述

在images.xcassets里面,你可以通过点击右键来添加不同的设备支持

在这里输入图像描述

编辑:好吧,当我拖放n图像到占位符,似乎不工作。 它会变得如下所示

在这里输入图像描述

我不知道为什么它在我的Xcode 6.4中performance得很奇怪。

编辑#2:

我在这里看到一个苹果的bug。 如右图所示,我可以select“通用”和任何设备。 但是通过属性检查器,我可以正确select“通用”或特定设备,如下所示

在这里输入图像描述

编辑#3:

Xcode 7中 ,属性检查器已经被更改,现在它给出了与右键单击相同的选项。 所以,而不是“通用”或特定的设备,现在它提供了全部select。

在这里输入图像描述

有一个工具: AVXCassets发生器 ,您可以直接生成XCAssets文件的所有图标和图像只需点击一下。

希望你会喜欢它。

在这里输入图像描述