ios - 需要iOS xcasset目录的一些解释

标签 ios iphone xcode xcasset

我是 iOS 开发的新手。想用Sprite-Kit框架做个小游戏,卡在xcasset目录下。

假设我的 iPhone 4s 有一张 320x320 像素的图像,分辨率为 960x480 像素。我把这个放到xcasset目录下的“iPhone 2x”对吧(cp.下图)?

enter image description here

现在,我需要为“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 的调整大小结果并不令人满意:

enter image description here

最佳答案

您的 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/

相关文章:

ios - 在 iOS 上以编程方式锁定 iPhone

ios - Xamarin 是否使用 LLVM 编译器?

ios - TableCell 中的 UILabel 永远不会改变字体或颜色

iPhone 设备上的 C 套接字崩溃。 EXC_BAD_ACCESS

ios - 在 Info.plist 中,我已经添加了 NSSpeechRecognitionUsageDescription 和字符串。但仍然显示相同的错误

ios - Info.plist:由于格式不正确,无法读取数据

ios - 没有助理结果

ios - <_UIPopoverBackground VisualEffectView> 被要求为其不透明度设置动画

iphone - 在 iPhone 应用程序中绘制这个椭圆的最佳方法是什么?

iphone - Cocos2d 中链接类方法