標籤:
在編寫IOS應用程式的過程中,我一直都是使用iPhone Retina(3.5-inch)模擬器測試的,一切顯示正常,切圖如下:
我在應用開發中,採用的是純程式碼實現。公司提供了一部iPhone4s,我使用其測試一切顯示正常。 問題出在,當我使用iPhone5和 iPhone5s真機測試時,發現我的應用程式在iPhone5和iPhone5s上沒有鋪滿螢幕顯示畫面,而是在應用畫面的上下各有一條黑色,如下:
檢查問題步驟:
一、我開始仔細檢查My Code,發現 在整個工程中,沒有一個地方在設定畫面高度時候使用了固定值480,都是直接擷取螢幕大小,然後再設定畫面大小的。
二、檢查項目資源,確認已經添加了Default.png、[email protected]、[email protected]啟動圖片和其它資源。
三、我開始在網上搜尋,查看有沒有網友遇到類似的問題,他們是怎麼解決的, 而且 嘗試了網友提供的各種方法(有說 如果用的有xib,就在xib裡面設定一下view的自動布局;如果用的是純程式碼,就手動設定UIView的autoLayout,... ),最終都沒有結果。
在這個過程中,看到有網友因為這個問題,導致 發布應用的時候被蘋果拒絕了。
解決方案:
1、我無意間發現以前我寫的Demo可以在 iPhone5s真機上正常顯示,我就又建立了一個項目,然後直接運行,顯示正常,這時候我內心就激動了。
2、我仔細對比兩個項目的異同點,發現“項目配置什麼都一樣”,內心納悶,沒問題呀。
3、最終發現,一個項目的配置是這樣的,如下:
之前寫的Demo項目配置如:
原因 iphone Portrait ios 裡面需要R4的啟動圖片,如果沒有對應的啟動圖片,系統會認為是3.5inch的裝置 。就會上下有黑邊 只需要把Launch Image是配置成下面這幅圖的選項就可以了,具體操作如:
。
將準備好的圖片拖放到LaunchImage中相應的框中,刪除手機上原來的app,Clean工程,重新運行就好了!
附錄:
Xcode 6 LaunchImage 載入介面標準大小
iPhone Portrait iOS 8-Retina HD 5.5 (1242×2208) @3x
iPhone Portrait iOS 8-Retina HD 4.7 (750×1334) @2x
iPhone Portrait iOS 7,8-2x (640×960) @2x
iPhone Portrait iOS 7,8-Retina 4 (640×1136) @2x
iPhone Portrait iOS 5,6-1x (320×480) @1x
iPhone Portrait iOS 5,6-2x (640×960) @2x
iPhone Portrait iOS 5,6-Retina4 (640×1136) @2x
IOS iphone 4inch上應用沒有全屏,上下有黑邊(轉)