iphone5的新解析度著實啃爹了一把,剛下完xcode4.5想玩玩iphone5的長螢幕效果,順便研究下怎麼去相容它。
繼續,開始修復黑邊~~
這一步只要在config裡多加一張4inch的launch就能搞定
這樣如下圖,讓layout上對齊,並且actionsheet顯示正常~
最後用巨集替換掉寫死的460,
#define screenheight [[uiscreen mainscreen] bounds].size.height挑了張比較簡單的view改了下,效果還不錯啦~#define screenwidth [[uiscreen mainscreen] bounds].size.width
#define statebarheight 20
#define mainheight (screenheight - statebarheight)
#define mainwidth screenwidth
搞完洗洗睡了~~
【更新】有同學和我反映xib沒法搞
我的做法是在m檔案裡對映那個需要定位的控制項iboutlet
- (void)viewdidload在load方法裡植入相容**就可以了。
另外有時候外層view的大小是不可見的,導致在下部的控制項沒有辦法被使用者觸發,這是因為view的frame是直接由xib賦值,ip4一般直接賦值460,所以需要對frame進行重置
另外如果要直接相容先前的xib可以這樣在class 的 viewdidload裡寫:
//for ip5另外可能需要判斷ip5的巨集定義,我這裡提供乙個:cgrect mainrect = self.view.frame;
mainrect.size.height = screenheight;
self.view.frame = mainrect;
#define isiphone5 ([uiscreen instancesrespondtoselector:@selector(currentmode)] ? cgsizeequaltosize(cgsizemake(640, 1136), [[uiscreen mainscreen] currentmode].size) : no)這樣基本能解決xib來init帶來的相容性問題。
對於iPhone5解析度相容性調整問題
iphone5的新解析度著實啃爹了一把,剛下完xcode4.5想玩玩iphone5的長螢幕效果,順便研究下怎麼去相容它。繼續,開始修復黑邊 這一步只要在config裡多加一張4inch的launch就能搞定 這樣如下圖,讓layout上對齊,並且actionsheet顯示正常 最後用巨集替換掉寫死的...
iphone螢幕解析度
ios螢幕解析度各不相同,但ios提供了一種考慮解析度的簡單方式。例如,iphone螢幕大小為320 480點 這裡的 點 不是畫素,iphone採用了retina螢幕,在此之前,iphone的螢幕解析度是320 480畫素,現在ios裝置的實際解析度為上述解析度與縮放因子的乘積,這意味著雖然對元素...
ios 解析度全集
裝置名稱 螢幕尺寸 解析度ppi 每英吋畫素數量 高寬比iphone 3.5英吋 320 x 480畫素 163 ppi 3 2iphone 3g 3.5英吋 320 x 480畫素 163 ppi 3 2iphone 3gs 3.5英吋 320 x 480畫素 163 ppi 3 2iphone ...