视网膜显示器兼容性
Posted
技术标签:
【中文标题】视网膜显示器兼容性【英文标题】:Retina display compatibility 【发布时间】:2010-09-14 13:18:41 【问题描述】:对于我们的 iPhone 应用,我们使用 50 x 50 的用户图片(来自 facebook)。它适用于 iPhone 3G 和 3GS,但不适用于 iPhone 4,因为它具有高分辨率显示屏。对于 iPhone 4,我们尝试发送 100 x 100(可变高度)图像,但由于显而易见的原因它无法正常工作。有什么想法吗?
【问题讨论】:
图像应该适用于所有设备。显示一些代码。 定义“不工作”——你的意思是没有图像吗?你的意思是图像有点块状?更具体! @deanWombourne 和 Eiko:图像像素化了。 【参考方案1】:您不需要为 Retina 显示屏做任何不同的事情。使用与旧 iPhone 上完全相同的图像将完全一样。
如果您想要显示更高分辨率的图像,那么如果您使用@2x
后缀保存文件,那么如果设备具有 Retina 显示屏,它将选择该后缀。在大多数情况下,它不需要任何额外的代码。
【讨论】:
对于应用程序上的所有图像,我们按照您所说的进行。但是我们使用的用户图像是来自 facebook 的用户的个人资料图像(使用 facebook conect)。而这些用户图片并没有保存在我们这边。 您是说要将 100x100 图像放置在 3GS 上会有 50x50 图像的空间中吗?在这种情况下,我会查看在UIView
(developer.apple.com/library/ios/documentation/UIKit/Reference/…) 中定义的contentScaleFactor
。
谢谢斯蒂芬。我们将尝试此解决方案并返回。
这仍然是 Mobile Feed Dialog 上图像的问题 - 它与设备无关,并且每张图像在视网膜设备上看起来都是像素化的。多年来一直如此,而 Facebook 似乎没有注意到,或者不想改变它。以上是关于视网膜显示器兼容性的主要内容,如果未能解决你的问题,请参考以下文章
如何兼容 iPhone 中的 Retina 3.5 和 4 [重复]