大尺寸图像没有像ipad那样在ios大分辨率屏幕上显示

时间:2017-12-13 08:13:02

标签: ios

我已经在资源文件夹中为IOS添加了三种格式的所有图像,如test.png,test @ 2x.png,test @ 3x.png,仍然在像ipad这样的大分辨率屏幕上显示默认的一个test.png。< / p>

我不明白为什么会这样。我在代码方面遗漏了什么。

编辑:

抱歉,我的错误。我的问题是错误的。它显示的是不同的图像,但尺寸很小。

我尝试了3个同名的不同图像,其中包含@ 2x,@ 3x扩展名。所以我知道在ipadPro(9.7英寸)中它显示@ 3x图像,而在iphone5(我的Mac中最低屏幕分辨率模拟器)它显示@ 2x图像。

那么我们如何决定哪个屏幕分辨率将采用哪个图像?我们如何确定它们的大小。?

1 个答案:

答案 0 :(得分:2)

根据设备的不同,您可以通过将每个图像中的像素数乘以特定比例因子来实现此目的。标准分辨率图像的比例因子为1.0,并称为@1x图像。高分辨率图像的比例因子为2.03.0,并称为@2x@3x图像。

  

例如,假设您的标准分辨率@1x图片为100px x 100px。此图片的@2x版本为200px × 200px@3x版本为300px × 300px

iPhone X,iPhone 8 Plus,iPhone 7 Plus和iPhone 6s Plus支持3倍 解析度。 iPhone 8,iPhone 7,iPhone 6 / 6s和iPhone 5s / 5c支持2倍 解析度。所有其他iPhone设备都支持1倍分辨率。

考虑使用大小为10磅的视图的示例图像集以及iOS系统如何选择特定于设备分辨率的图像。

@3x -> 3 * (10px x 10px) = (30px x 30px) // iPhone X, iPhone 8 Plus, iPhone 7 Plus, and iPhone 6s Plus
@2x -> 2 * (10px x 10px) = (20px x 20px) // iPhone 8, iPhone 7, iPhone 6/6s  and iPhone 5s/5c
@1x -> 1 * (10px x 10px) = (30px x 30px) // All other iPhone devices

enter image description here

注意:您无需执行任何代码(设置)来分配特定于设备分辨率的图像。只需在图像集中添加所有(1x,2x和3x)类型分辨率的图像。 iOS系统自动从图像集中选择/选择特定于设备分辨率的图像。

请查看Apple的此文档:Image Size and Resolution

这是一个很容易理解的好教程:DESIGNING FOR THE NEW IPHONE SCREEN RESOLUTIONS