我是 iOS 开发的新手。想用Sprite-Kit框架做个小游戏,卡在xcasset目录下。
假设我的 iPhone 4s 有一张 320x320 像素的图像,分辨率为 960x480 像素。我把这个放到xcasset目录下的“iPhone 2x”对吧(cp.下图)?
现在,我需要为“iPhone 1x”提供 160x160 版本的图像,为“iPhone 3x”提供 640x640 版本的图像吗? iPad 呢? “iPad 1x”和“iPad 2x”在像素方面的确切含义是什么?在我的示例中,“iPad 1x”也是 320x320 而“iPad 2x”也是 640x640 吗?
EDIT-1:感谢链接到 the possible duplicate .但也没有讨论 iPad 版本的确切用途以及它们在像素方面的关系。
EDIT-2:尽管我使用 4096x4096 像素图像生成启动图像(下图比较),但 Asset Catalog Creator 的调整大小结果并不令人满意:
最佳答案
您的 Sky 图像似乎没有设置为“通用设备”,这就是它询问 iPad 图像的原因。参见 Apple's Asset Catalog Help详细了解您为何需要特定于设备的图像。
选择天空图像名称,然后按 Command-Opt-4 打开属性检查器。在显示“设备”的地方将其设置为“通用”,您应该只看到带有 1x、2x 和 3x 图像井的“通用”部分。
此外,您的示例图片尺寸似乎不对。如果您的@2x 图像(对于 iPhone 4s)是 960x480,那么 1x 图像将是 480 x 240。(而您在 iPhone 6+ 上使用的 3x 图像将是 1440 x 960。)您的 1x 图像应该是任何磅值想要,2x应该是两个维度上的两倍,3x应该是两个维度上1x的三倍。
关于ios - 需要iOS xcasset目录的一些解释,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29877465/