2013-07-10 26 views
0

我剛開始開發一個通用iOS應用程序,我需要設置背景圖像。設置1024 * 780圖像爲所有iDevices

iPad,iPad-retina,我只想拍攝一張最高分辨率圖像(比如1024 * 780),而不是使用3〜4種不同尺寸的圖像用於iPhone,iPhone-視網膜,iPhone5,iPhone5-視網膜。想用來適應上述所有設備。怎麼樣???

​​

&它並未佔用較小設備的確切屏幕尺寸。它正在縮小。

請諮詢!!!

回答

0

如果蘋果公司建議爲每種顯示器使用不同的圖像,有一個特定的原因,那就是內存。
隨着顯示器尺寸的增加,設備上可用的內存也會增加,這是因爲更大的圖像需要更多的內存。即使您想在運行時調整大小(不延長),第一次打開它將佔用該內存,直到您釋放它爲止。佔用的內存不必處理文件大小。
如果你仍然想嘗試看看這個庫,這將有助於你調整(不拉伸)圖像在運行時NYXImagesKit

+0

謝謝Andrea Garu的回覆。我剛剛通過你上面提到的鏈接! 。 OMG,iOS確實有很多東西需要學習,並不是那麼簡單。在我的Android應用程序中,我只扔了一個背景圖像,它幾乎適合任何大小的移動設備...在iOS中尋找相同的。 –

+0

不要考慮適合性,在Android中考慮內存,你有沒有檢查過你的應用,如果它也適用於低端設備?有時會因爲內存不足而崩潰。 – Andrea

+0

true ...但iDevices不會面臨低內存問題(我想!) –

0

我在做同樣的事情,我在App Store上的應用程序之一。在主菜單視圖中,我使用UIImaveView作爲背景,並在Interface Builder中將模式設置爲Aspect Fit。我使用支柱和彈簧來保持其與邊緣對齊。

對於通用應用程序,您將在iPhone和iPad故事板(或.xib文件)上創建此UIImageView並使用相同的圖像文件。

但是,我仍然有一個視網膜顯示器的2x版本。所以,我只用兩個圖像來覆蓋所有設備,方向和分辨率。

如果您創建適合每個設備的背景圖像,它將消耗更少的內存,但顯然會增加包的大小。在我的情況下,目標是保持包的大小很小(用於蜂窩傳輸的時候小於50MB),並且我有剩餘的內存。

+0

謝謝......但我只是不想使用故事因爲我更喜歡編程方式,但爲什麼要多花點時間嘗試並讓你知道 –

+0

@ user2109817,編程方式,它是一樣的,只需在代碼中而不是通過Interface Builder來完成。 –