今天花了一天的時間對IOS6和IPHONE5進行適配 [由於自己用的機器是IPHONE5,所以沒出什麼問題,但是在IPHONE4上就出問題了,都是IOS7版本,還有一台IPOD是IOS6版本,也出問題~ 哎,一開始沒注意適配,現在得花這精力去修改~ 特總結一下,防止以後犯錯誤,提高工作效率,加油!]
由於習慣問題,都在視圖控制器下的viewDidLoad去創建自定義的UI元素,因為IOS版本問題,所以self.view.frame也會不同,如果要實現相同的UI布局,用代碼進行測試,發現以下4種情況
3.5寸IPHONE
IPHONE5,IPHONE5S設備
結論:針對有導航欄的視圖控制器,IOS6系統下self.view下的subviews的Origin.y是從導航欄底部開始計算的,高度是整個屏幕高度減去20後的值為參照,IOS7系統下是從0開始計算的,高度是整個屏幕高度為參照!
適配方案探討:
1.在每個視圖控制器的viewDidLoad去判斷IOS版本和IPHONE尺寸,創建不同的frame,去設置每個UI元素 [當前由於時間問題,采取這種方案,發現略顯繁瑣,不易維護]