【发布时间】:2016-12-07 16:06:32
【问题描述】:
我并非不知道围绕该主题存在多少问题,我读过的最多,但无法找到应该做的常见事情的直接答案。
如何处理不同手机尺寸的全屏图像?
当前策略:
我正在使用矢量,因此我的想法是在 3 个不同的图像资产中创建 3 个矢量 (PDF):
- 名称:mypicture-320 尺寸:320 x 568
- 名称:mypicture-375 尺寸:375 x 667
- 名称:mypicture-414 尺寸:414 x 736
然后,当我想获取图像时,我会在代码中执行一些操作,例如(伪代码):
if iPhone5 {
return mypicture-320
}
else if iPhone6 {
return mypicture-375
}
else if iPhone6Plus {
return mypicture-414
}
这感觉不对,好像现在只使用 xcasset 应该有更好的方法。我错过了什么吗?
相关问题:如果我选择不使用矢量,那么我需要以下图片:
- 名称:mypicture-320 比例:@2 实际尺寸:640 x 1136
- 名称:mypicture-375 比例:@2 实际尺寸:750 x 1334
- 名称:mypicture-414 比例:@3 实际尺寸:1242 x 2208
以与前面所述相同的方式调用它们。
【问题讨论】:
-
这毫无意义。如果您有一个矢量图像,则您不需要三个不同的图像。您只需要 一个 图像。这就是矢量图像的全部点。
-
@matt 以及该向量的大小是多少? iPhone 6 和 iPhone 5 有两种不同的尺寸,比例尺@2
-
您可能需要将措辞从 size 更改为 ratio,因为矢量图像与大小无关。
-
iOS 中的@Cœur 向量是通过 PDF 实现的,它确实有大小,应该是比例“@1”的大小。这就是 xcode 如何确定要生成的 png 的大小
-
"以及该向量的大小是多少" 无论您将包含图像视图设置为什么大小。而且您已经说过它是“全屏”。这与普通 PNG 图像完全相同。您没有针对多个屏幕尺寸的多个 PNG 图像;你有一个正确分辨率的尺寸,它会自动缩小以适合图像视图。确实,有人可能会争辩说,您对“矢量”的使用在这里只是一个红鲱鱼。