0

我知道标准图像和视网膜(更高分辨率)图像有一个文件命名约定。这是通过将文件命名为 来实现的<filename>@2.jpg,例如。

现在我刚刚在 iPad 模拟器上运行了一个测试,这似乎表明使用更高的分辨率会更好。测试是这样的:我有一张全屏图像和一张视网膜全屏图像。低分辨率图像上只有一个“1”。高分辨率图像上显示“2”。然后我加载了高分辨率图像以填满 iPad 模拟器的整个屏幕。

  • 结果:似乎整个视网膜图像都显示在屏幕上。
  • 预期结果:我预计高分辨率图像会被部分裁剪 - 我认为屏幕太小而无法显示整个视网膜图像。

明显的问题:

  1. 我的测试是否有缺陷(我是否遗漏了什么)?
  2. 如果这个测试可以验证,那么如果我们可以简单地使用retina,为什么还要包括2组图像(标准和视网膜)?我唯一看到的是视网膜图像消耗更多内存,因此对于没有视网膜显示器的设备来说可能太多了。
4

1 回答 1

3

是否使用视网膜 (@2x) 图像取决于屏幕的比例因子(每点的像素数量)。iPad 和 iPhone 都有相同的行为。

您永远不会直接参考视网膜图像。相反,您可以通过说来加载它们

[UIImage imageNamed:@"myImage"];

如果您在视网膜显示器上,将为您选择图像的视网膜版本 (myImage@2x.png)。在任何一种情况下,图像都会在屏幕上占据相同数量的点。视网膜和非视网膜显示器的点数相同。

于 2012-07-31T05:37:23.763 回答