2012-05-02 75 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