psy*_*tik 14 iphone ios4 retina-display
我有一个TabBarController,为方法设置图像,如下所示-init:
self.tabBarItem.image = [UIImage imageNamed:@"tabImage.png"];
我在资源中有一个tabImage@2x.png文件.在iPhone 4模拟器或手机中,高分辨率图像未被拾取 - 低分辨率版本只是按比例放大.
任何想法为什么会这样?
编辑:更多信息:如果我尝试明确使用tabImage@2x.png(或只是tabImage@2x)然后我看到的标签图像非常大,超出标签的范围,就好像它从60px缩放到120px.因此看起来任何名称供应都被视为scale = 1.0图像.
And*_*ewS 11
请注意,模拟器不区分大小写,但设备是.确保案例完全匹配.如果您在某个时候更改了文件名的大小写,则需要清理并重建.有时候,对于模拟器,我不得不实际吹走Library/Application Support/iPhone Simulator/4.3/Applications /中的文件夹来重建以获取重命名的图像.
一直用
[UIImage imageNamed:@"foo.png"]
Run Code Online (Sandbox Code Playgroud)
这适用于3.x和4.x设备,以及4.x模拟器.具有Retina显示器(和4.x模拟器)的设备将神奇地拾取图像的@ 2x版本; iOS已被修改为智能的这个功能和@ 2x.png文件.
确保将@ 2x.png和normal.png都添加到项目文件中,并进行完全清理和构建.正如其他人提到的那样,也要验证图像的大小; 显然,如果它们不是尺寸的2倍,它将无法工作(我自己没有验证过).
如果您关闭.png,它将仅适用于iOS 4.0.因此,如果您正在构建一个仅限4.0+的应用程序,您可以要求:
[UIImage imageNamed:@"foo"]
Run Code Online (Sandbox Code Playgroud)
如果您只有一个高分辨率图像并想在Retina和非Retina设备上使用它,那么您必须将view.contentMode更改为适合缩放.
您现在可以关闭 .png。我相信它仍然有效,但你可以尝试一下。
| 归档时间: |
|
| 查看次数: |
9864 次 |
| 最近记录: |