苹果发布了支持视网膜(retina)图形的新iPad。
我看到了这个链接中的苹果应用程序的视网膜图形。正如您所看到的,苹果只是在视网膜iPad显示器上使用"@2x"后缀。
我有一个通用应用程序。那么如何在新的iPad和iPhone上同时支持视网膜?iPad视网膜会使用类似于iPad的"@2x"后缀吗?
苹果发布了支持视网膜(retina)图形的新iPad。
我看到了这个链接中的苹果应用程序的视网膜图形。正如您所看到的,苹果只是在视网膜iPad显示器上使用"@2x"后缀。
我有一个通用应用程序。那么如何在新的iPad和iPhone上同时支持视网膜?iPad视网膜会使用类似于iPad的"@2x"后缀吗?
我刚创建了一个测试应用并进行了测试。
对于没有Retina显示屏的设备:
ImageName.png
- 适用于 iPhone/iPod
ImageName~ipad.png
-- 适用于 iPad
对于有Retina显示屏的设备:
ImageName@2x.png
- 适用于 iPhone/iPod
ImageName@2x~ipad.png
-- 适用于 iPad
如果你的 iPhone 高分辨率图像和 iPad 高分辨率图像具有相同的尺寸,则仍可以使用 @2x。
加载图像只需使用 [UIImage imageNamed:@"ImageName.png"];
我刚在 iOS 模拟器上测试了 iOS 5.1、5.0 和 4.3 版本。
顺便问一下,为什么只需要使用 @2x 呢?
主要原因是你不应该在 iPhone 和 iPad 上使用相同的图形,因为 iPhone 和 iPad 的尺寸不同。如果你使用相同的尺寸,那么对于您的 iPad Retina 显示屏图形将已经处理完毕(如果您之前使用的是 iPhone Retina 显示屏)。如果你使用不同尺寸的图片,那么你就需要为 iPhone 和 iPad 使用不同的图片名称。所以在这方面,你只需要添加 @2x 后缀。 这就是为什么你应该只使用 @2x 后缀的原因。- 这是我的想法。
MyImage.png - 图像资源的默认版本。
MyImage@2x.png - 高分辨率图像资源的版本,适用于具有Retina显示屏的设备。
MyImage~iphone.png - iPhone和iPod touch的图像版本。
MyImage@2x~iphone.png - 适用于具有Retina显示屏的iPhone和iPod touch设备的高分辨率图像版本。
+(UIImage*) deviceIndependentImageNamed:(NSString*)file;
或类似的方法。你也可以在代码中对图像进行缩放,而不是使用多个文件。 - Felix