【发布时间】:2012-01-28 19:02:43
【问题描述】:
Retina iOS 设备不显示@2X 图像,它显示1X 图像。
我正在使用 Xcode 4.2.1 Build 4D502,该应用针对 iOS 5。
我创建了一个测试应用(Master/Detail)并添加了两张图片。
iconTest.png 24 x 24 图标测试@2X.png 48 x 48 每张图片都是独一无二的,因此我可以很容易地分辨出正在显示的是哪一张。
在 ViewDidLoad 中,我正在向导航控制器添加一个按钮...
UIImage *buttonImage = [UIImage imageNamed:@"iconTest.png"];
UIBarButtonItem *button = [[UIBarButtonItem alloc]
initWithImage:buttonImage
style:UIBarButtonItemStyleBordered
target:self
action:@selector(share)];
self.navigationItem.rightBarButtonItem = button;
当我在 iOS 模拟器中运行此测试应用程序时,它会正确显示视网膜 iOS 设备的图标。在模拟器中,Hardware->Device-> 设置为 iPhone (Retina)。当我暂停应用并查看 buttonImage 对象时,我可以看到比例设置为 2。
这按预期工作!
但是,当我连接 iPhone 4 并运行应用程序时,会显示较低分辨率的图像。 而且,当我暂停应用并查看 buttonImage 对象时,我可以看到比例为 1。
这不是预期的行为。
关于为什么模拟器和真实 iOS 设备之间的差异有什么想法吗?
这是一个已知问题吗?有已知的解决方法吗?
谢谢, 布赖恩。
【问题讨论】:
-
如果您最近才添加新图像,请尝试清理并重建项目 - 如果您重命名现有文件,通常不会拾取图像。
标签: ios xcode4 uiimageview uiimage uibarbuttonitem