2012-09-03 50 views
4

我試圖更新我的應用程序以支持視網膜顯示,但是當它在Retina MacBook Pro上運行時,圖像的@ 2x版本未被使用。以下是我在應用程序中用於設置圖像視圖的方法。Mac應用程序未使用視網膜@ 2個圖像文件

在XML解析器類:

[[self theCurrent] setCurIcon:[NSImage imageNamed:@"snow.png"]]; 

在當前類設置NSImageView:

[viewCurIcon setImage:curIcon]; 

每個圖像文件有一個標準清晰度的版本和高清晰度版本,都在支持Xcode項目的文件夾:

snow.png is 128x128 pixels 
[email protected] is 256x256 pixels 

我確認了@當Xcode構建應用程序時,應用程序包中會包含2個版本。其他需要注意的是:該應用程序是一個菜單欄應用程序,其中包含NSPopover中的所有視圖,在其中一個圖像視圖中使用動畫GIF(GIF的無@ 2x版本),該應用程序使用Xcode 4.4構建一臺運行OSX 10.7.4的老式MacBook Pro,不含視網膜顯示屏。

+0

@NSPostWhenIdle你確定使用「雪」而不是「 snow.png「會起作用嗎?我讀過的所有內容都使用文件擴展名。 – wigging

+0

@NSPostWhenIdle您可以提交您的評論作爲答案嗎? – wigging

+0

好的,我剛剛發佈了它。它能爲您提供幫助嗎?我不是僅僅是iOS的Mac開發人員,而是這樣做的。我只是假定它會是一樣的! –

回答

5

嘗試使用@"snow"而不是@"snow.png"。這樣,你指向一個名爲「雪」的圖像,讓操作系統整理有關分辨率和擴展名的細節,而不是具體說明圖像將被命名爲"snow.png"

+0

你是否還必須增加視網膜圖像文件的DPI?例如,標準圖像文件爲128x128像素,圖像DPI爲72px /英寸,而視網膜圖像文件爲256x256像素,圖像DPI爲72px/inch。視網膜DPI應該是144像素/英寸? – wigging

+1

@Gavin 72 DPI對於這兩個圖像都可以,我似乎無法立即以書面形式發現這一點,但我很確定蘋果推薦這樣做。 –

+0

如果您發現該文檔,請告知我。根據我的好友與視網膜MBP,從圖像文件名刪除'.png'擴展名解決了我的問題! – wigging

相關問題