ios – 使用较少的图像用于非视网膜,视网膜和视网膜HD(@ 1x,@ 2x,@ 3x)用于通用应用

ios – 使用较少的图像用于非视网膜,视网膜和视网膜HD(@ 1x,@ 2x,@ 3x)用于通用应用,第1张

概述为了在通用设备上支持iOS 7到8,我必须制作不同大小的相同图像的4个副本. 对于iPhone image@2x.png(iphone 4s,5,5s,6) image@3x.png(iphone 6) 适用于iPad image.png(ipad 2,ipad mini 1) image@2x.png(ipad 3,4,ipad mini 2,ipad Air) 这些图片真的让应用程序大小膨胀. 为了在通用设备上支持iOS 7到8,我必须制作不同大小的相同图像的4个副本.

对于iPhone
image@2x.png(iphone 4s,5,5s,6)
image@3x.png(iphone 6)

适用于iPad
image.png(ipad 2,ipad mini 1)
image@2x.png(ipad 3,4,ipad mini 2,ipad Air)

这些图片真的让应用程序大小膨胀.

是否可以使用1个图像大小,最大的一个和缩放以适应uiimagevIEw并使用图像视图缩小较小屏幕上的图像?

imageVIEw.contentMode = UIVIEwContentModeScaleAspectFit;

或者是否绝对有必要拥有不同尺寸的所有4份副本?

它适用于模拟器和视网膜iPad 3上的所有设备,但我无法在其他设备上进行实际测试,并担心图像可能无法显示.

有没有人尝试使用1张大图而不是副本?

解决方法 是的,理论上你可以使用最大分辨率的图像,让UI ImageVIEw使用Aspect Fit模式缩小图像.

唯一的缺点是不支持视网膜的旧手机性能也较差.例如,当在UItableVIEw的单元格上使用图像并滚动时,设备必须加载大图像,然后缩小图像,同时滚动它,并且它会在旧的,较慢的设备上断断续续.

所以,也许只是在列表视图中使用多个图像(应该只是缩略图,无论如何都很小,或者只是在这里使用较小的图像),但不要担心留在屏幕上而不滚动的较大图像.

确保使用允许缓存的方法(如imagenamed:)在列表视图中加载图像.

只要您考虑缩小图像所涉及的性能损失,您就可以只使用最大的图像并将其缩小以适应.

顺便说一句,是的,我已经在App Store的真实应用程序中使用了这种技术.

我见过的另一种技术是包含较低质量的图像(1x或2x),如果在较高分辨率的设备(2x或3x)上运行,则自动从网络下载高分辨率图像.也许对它很好,只能在wifi下载它们.

总结

以上是内存溢出为你收集整理的ios – 使用较少的图像用于非视网膜,视网膜和视网膜HD(@ 1x,@ 2x,@ 3x)用于通用应用全部内容,希望文章能够帮你解决ios – 使用较少的图像用于非视网膜,视网膜和视网膜HD(@ 1x,@ 2x,@ 3x)用于通用应用所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/web/1017074.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-05-23
下一篇 2022-05-23

发表评论

登录后才能评论

评论列表(0条)

保存