2012-05-02 45 views
10

我在iPhone 4上运行我的应用程序,导航栏和我的所有标签都非常模糊(非视网膜)。大多数模糊的UI元素都是iOS默认UI。iOS - Retina显示资产无法使用?

当我在手机上运行其他应用程序时,他们看起来好多了,而且您可以很容易地看到差异。

是否有任何项目设置需要更改才能获得更高质量的资产以用于我的应用程序?

编辑:

我不关心我自己的资产,我关心的,现在是在iOS中默认的UI元素

编辑:

我为我的主要UINavigationController添加了一个阴影,为了在动画阴影时提高性能,我将ShouldRasterize设置为YES,删除此行的xode可修复问题

[self.navigationController.view.layer setShouldRasterize:YES]; 
+0

将@ 2x后缀添加到您的图像(例如Icon.png 57x57&[email protected] 114x114) –

+2

您能保证它是软件而不是您的眼睛吗? – CodaFi

+0

是的差别很明显,我也有别人确认它 – aryaxt

回答

25

如果设置应该栅格化你要记得设置你的光栅化规模。

[self.view.layer setShouldRasterize:YES]; 
[self.view.layer setRasterizationScale:[UIScreen mainScreen].scale]; 

您必须记住,光栅化会将图层转换为简单的位图,这些位图存储在内存中以在复杂动画期间保存cpu周期。但是,如果您使用的是Retina设备,则需要确保将其保存为倍数,因为屏幕有4倍的像素。

+0

设置rasterizationScale的伎俩,谢谢 – aryaxt

+1

谢谢,这是救星! ;) – ArkReversed

+0

哈哈,很高兴我能帮上忙。快乐编码:) –

1

您是否用@ 2x后缀制作了加倍大小的图像?

例如 navBarBackground.png & [email protected](最后一个是第一个大小的两倍)

http://developer.apple.com/library/ios/DOCUMENTATION/UserExperience/Conceptual/MobileHIG/IconsImages/IconsImages.html#//apple_ref/doc/uid/TP40006556-CH14-SW16

+3

我认为他的问题更多的是关于UIKit的成员,而不是外部图像。 – CodaFi

+0

然而,如果设备是视网膜设备,则状态栏和所有其他本机设置会自动位于视网膜上,而不管该视频设备是否支持视网膜。 –

+0

我没有使用任何自定义图像,整个应用程序使用默认的UI元素 – aryaxt