我正在尝试减小我提交的二进制文件的大小(30+ MB),并且我感觉到图像获得了相当大的(> 26 MB)部分。
我还观察到,如果我删除视网膜图像 ( @2x.png
),iOS 会优雅地用 4 英寸视网膜 ( -568h@2x.png
) 版本替换它们。
-568h@2x.png
如果我提供版本,视网膜图像真的是多余的吗?
附言
并不是说一张图片有很大的不同,但如果答案是肯定的,这也适用default.png
吗?
我正在尝试减小我提交的二进制文件的大小(30+ MB),并且我感觉到图像获得了相当大的(> 26 MB)部分。
我还观察到,如果我删除视网膜图像 ( @2x.png
),iOS 会优雅地用 4 英寸视网膜 ( -568h@2x.png
) 版本替换它们。
-568h@2x.png
如果我提供版本,视网膜图像真的是多余的吗?
附言
并不是说一张图片有很大的不同,但如果答案是肯定的,这也适用default.png
吗?
@2x 图像适用于视网膜设备。与非视网膜对应图像相比,它们在视网膜设备(例如 iPad3、iPhone 5)上看起来更加清晰和干净。这里有一些减少二进制文件大小的建议。
1) 对于背景图像,检查它们是否真的需要。如果它们是简单的纯色图像,您可以简单地设置 UIView 的 backgroundColor。
2) 尽可能使用 9 个补丁(也称为 9 比例)图像作为按钮或视图背景。它们通常是 1 px 宽的图像,您可以使用以下 UIImage 方法来使用它们
- (UIImage *)resizableImageWithCapInsets:(UIEdgeInsets)capInsets resizingMode:(UIImageResizingMode)resizingMode
通常image@2x
可以用作 for 的替代品image
,但不能反过来(因为它们看起来不太好)。这样做的副作用是将使用更多内存,并且在可能导致问题的非视网膜设备上。如果您不支持非视网膜设备,那么您不需要任何image
s.
一般来说,image-568h@2x
除了Default
和其他背景图像之外,您不应该有很多图像。无论屏幕尺寸如何,您的大部分内容图像都将具有相同的尺寸。对于多个不同屏幕尺寸上的相同尺寸按钮,您不需要不同名称的图像。