在 iphone 4 视网膜显示屏中显示图像
Posted
技术标签:
【中文标题】在 iphone 4 视网膜显示屏中显示图像【英文标题】:display image in iphone 4 retina display 【发布时间】:2011-02-10 06:22:11 【问题描述】:我在 iphone 4 中显示高分辨率图像,我将图像视图帧大小设置如下: imageFrameNormal.size.width = 470; imageFrameNormal.size.height = 625;
但它显示全屏而不是这个尺寸。所以请任何人建议我如何以合适的尺寸显示图像。 我正在尝试在模拟器中检查它。
谢谢
【问题讨论】:
【参考方案1】:您必须在视网膜和普通显示器上使用相同的尺寸。例如,您有大小为 100x100 的图像视图。在 Retina 设备上,您应该使用相同的 100x100 尺寸(代码中没有变化)。但是,您最好使用高分辨率图像(2 倍大小)。为此,您需要正确命名: image.png - 正常大小的图片 image@2x.png - 2x 大小的图像。
当你打电话时
UIImage* img = [UIImage imageNamed: @"image.png"];
image.png 将用于正常显示,而 image@2x.png 用于视网膜(ios 会自动执行)。
【讨论】:
【参考方案2】:视网膜显示器的坐标系不是以像素为单位,而是以“点”为单位。 iPhone 显示屏,无论是 Retina 还是旧版,都将始终为 320x480 点。当与框架、大小、原点等任何参数进行交互时,您需要记住使用点而不是像素。操作系统将为您处理点和像素之间的“转换”。
有关更详细的说明,请参阅Drawing and Printing Guide for iOS 中的点与像素。
【讨论】:
以上是关于在 iphone 4 视网膜显示屏中显示图像的主要内容,如果未能解决你的问题,请参考以下文章