【问题标题】:iphone - How to control images for Retina Display?iphone - 如何控制 Retina Display 的图像?
【发布时间】:2011-07-19 13:18:57
【问题描述】:

我的应用会下载一张图片并将其显示到 UIImageView 中。

图片很大,比如 600 * 600,UIImageView 的大小是 100 * 100。 因此,当显示图像时,我将 UIImageView 设置为缩放以适合。

我的问题是

对于 iPhone 3Gs,我了解图像直接缩放到 100 * 100 并显示在 UIImageView 中。

但是 iPhone 4 呢?当我做imageView.image = image时,iOS会自动先将图片缩放到200 * 200,然后在100 * 100的imageView中显示吗?

我的意思是我应该做些什么来确保 Retina 显示屏得到适配吗?

谢谢

【问题讨论】:

  • 你应该把它缩放到原来分辨率的两倍,以便在 iPhone 4 中显示 t
  • @iphonefreak 这只有在图像大小等于或小于UIImageView 的情况下才成立。由于在这种情况下,图像实际上大于标准尺寸 (100 x 100) 和 Retina 尺寸 (200 x 200),因此无需对图像本身进行任何处理。
  • 帮您的用户一个忙,并立即从服务器下载适当大小的图像。会更快,可能更便宜。相信操作系统会做正确的事情。将图像缩放到适合您的显示的像素数。

标签: iphone uiimageview uiimage retina-display


【解决方案1】:

在这种情况下,不,你不需要做任何特别的事情。如果您的 UIImageView 配置良好(缩放以适应,就像您已经完成的那样),iPhone4 将在 100x100 点的 UIImageView 中以 200x200 像素显示您的图像。也无需下载不同的“whatever@2x.png”图像。

【讨论】:

  • 不要忘记,即使您没有真正的 iPhone4,您也可以通过在硬件菜单中更改您的设备在模拟器上进行测试(或者是设备,我不知道,我这里有法语版)。
【解决方案2】:

您无需在此处执行任何具体操作。您的图像将被 UIKit 适当地缩放,实际上它是 UIImageView,它将受到 Retina 显示器的影响,而不是您的图像。您指定的大小为 100 x 100,这在非 Retina 显示器上适用,但在 Retina 显示器表面下的物理尺寸实际上为 200 x 200,因为它会考虑到scaleFactor

无论哪种方式,UIImageView 都会相应地缩放图像。

【讨论】:

  • 感谢您的回答,我将 Cyrille 的回答标记为正确,因为他的回答比您早一点?告诉我你是否认为你的来得早。再次感谢。
【解决方案3】:

我有一个经验,它的工作方式相反..所以缩放它为视网膜和 iphone 3G 或 3GS 将正确显示它。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2013-01-06
    • 1970-01-01
    • 1970-01-01
    • 2011-03-08
    • 1970-01-01
    • 2016-01-23
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多