xib + 代碼快速適配機型

個人認為最快的鋪簡單頁面的最快方式


很明顯能看出這三種屏幕的尺寸寬高比是差不多的胎源,因此可以在5的基礎上鲤竹,按比例放大來兼容6和6Plus的屏幕搅方。



繪制的時注意!

1)尺寸

2)取消

viewDidLoad() 函數里面主要負責加載一些配置型的東西并且初始化界面盟蚣。最后會初始化自動布局的約束悦屏。你在界面上設置的frame节沦,雖然viewDidLoad() 里面修改了frame,但是在最后初始化自動布局約束之后你的frame 又回到添加自動布局約束時的值础爬。如果寫在viewDidAppear() 里面會出現一些能看見的變化.這不是我們想要的,我的xcode版本比較高.所以Storyboard的Use Auto Layout 是選中的,那我們就取消這個選項,再把調用方法寫在viewDidLoad,就不會出現能讓你看見的過程.



在帶有xib的viewController 中

定義宏

#define SCREEN_WITH [[UIScreen mainScreen] bounds].size.width

#define SCREEN_HEIGHT [[UIScreen mainScreen] bounds].size.height

及獲取屏幕的寬和高


在viewDidload里調用

[self xibAutoLay:self.view];


方法實現

- (void)xibAutoLay:(UIView *)allView

{

CGFloat autoSizeScaleX, autoSizeScaleY;

/*

因為iPhone4s屏幕的高度是480甫贯,因此當屏幕尺寸大于iPhone4時,autoSizeScaleX和autoSizeScaleY即為當前屏幕和iPhone5尺寸的寬高比看蚜。

比如如果是5叫搁,autoSizeScaleX=1,autoSizeScaleY=1供炎;

如果是6渴逻,autoSizeScaleX=1.171875,autoSizeScaleY=1.17429577碱茁;

如果是6Plus裸卫,autoSizeScaleX=1.29375仿贬,autoSizeScaleY=1.2957纽竣;

*/

if(SCREEN_HEIGHT > 480){

autoSizeScaleX = SCREEN_WITH/320;

autoSizeScaleY = SCREEN_HEIGHT/568;

}else{

autoSizeScaleX = 1.0;

autoSizeScaleY = 1.0;

}

for (UIView *temp in allView.subviews) {

CGRect rect;

rect.origin.x = temp.frame.origin.x * autoSizeScaleX;

rect.origin.y = temp.frame.origin.y * autoSizeScaleY;

rect.size.width = temp.frame.size.width * autoSizeScaleX;

rect.size.height = temp.frame.size.height * autoSizeScaleY;

temp.frame = rect;

/*? 如果想文字也適應比例

if ([temp isKindOfClass:[UILabel class]]) {? //判斷帶文字的類型的view,例:UILabel

UILabel *labelTemp = (UILabel *)temp; // 轉換類型

labelTemp.font? = [UIFont systemFontOfSize:17/(320*568/(SCREEN_WITH * SCREEN_HEIGHT))];

[labelTemp sizeToFit];

}

*/

// ? ? 因為有可能你在某個view的子類上嵌套了其他的view所以 有幾層嵌套就嵌套幾層for in

/*

for (UIView *tempTwo in temp.subviews) {

rect.origin.x = tempTwo.frame.origin.x * autoSizeScaleX;

rect.origin.y = tempTwo.frame.origin.y * autoSizeScaleY;

rect.size.width = tempTwo.frame.size.width * autoSizeScaleX;

rect.size.height = tempTwo.frame.size.height * autoSizeScaleY;

tempTwo.frame = rect;

}

*/

}

}


此文章新手向..本文方法可能存在某些bug,請不要介意,因為,我還沒發(fā)現....

參考博客地址? :http://blog.it985.com/5121.html

最后編輯于
?著作權歸作者所有,轉載或內容合作請聯系作者
  • 序言:七十年代末,一起剝皮案震驚了整個濱河市茧泪,隨后出現的幾起案子蜓氨,更是在濱河造成了極大的恐慌,老刑警劉巖队伟,帶你破解...
    沈念sama閱讀 206,602評論 6 481
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件穴吹,死亡現場離奇詭異,居然都是意外死亡嗜侮,警方通過查閱死者的電腦和手機港令,發(fā)現死者居然都...
    沈念sama閱讀 88,442評論 2 382
  • 文/潘曉璐 我一進店門啥容,熙熙樓的掌柜王于貴愁眉苦臉地迎上來,“玉大人顷霹,你說我怎么就攤上這事咪惠。” “怎么了淋淀?”我有些...
    開封第一講書人閱讀 152,878評論 0 344
  • 文/不壞的土叔 我叫張陵遥昧,是天一觀的道長。 經常有香客問我朵纷,道長炭臭,這世上最難降的妖魔是什么? 我笑而不...
    開封第一講書人閱讀 55,306評論 1 279
  • 正文 為了忘掉前任袍辞,我火速辦了婚禮鞋仍,結果婚禮上,老公的妹妹穿的比我還像新娘搅吁。我一直安慰自己凿试,他們只是感情好,可當我...
    茶點故事閱讀 64,330評論 5 373
  • 文/花漫 我一把揭開白布似芝。 她就那樣靜靜地躺著那婉,像睡著了一般。 火紅的嫁衣襯著肌膚如雪党瓮。 梳的紋絲不亂的頭發(fā)上详炬,一...
    開封第一講書人閱讀 49,071評論 1 285
  • 那天,我揣著相機與錄音寞奸,去河邊找鬼呛谜。 笑死,一個胖子當著我的面吹牛枪萄,可吹牛的內容都是我干的隐岛。 我是一名探鬼主播,決...
    沈念sama閱讀 38,382評論 3 400
  • 文/蒼蘭香墨 我猛地睜開眼瓷翻,長吁一口氣:“原來是場噩夢啊……” “哼聚凹!你這毒婦竟也來了?” 一聲冷哼從身側響起齐帚,我...
    開封第一講書人閱讀 37,006評論 0 259
  • 序言:老撾萬榮一對情侶失蹤妒牙,失蹤者是張志新(化名)和其女友劉穎,沒想到半個月后对妄,有當地人在樹林里發(fā)現了一具尸體湘今,經...
    沈念sama閱讀 43,512評論 1 300
  • 正文 獨居荒郊野嶺守林人離奇死亡,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內容為張勛視角 年9月15日...
    茶點故事閱讀 35,965評論 2 325
  • 正文 我和宋清朗相戀三年剪菱,在試婚紗的時候發(fā)現自己被綠了摩瞎。 大學時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片拴签。...
    茶點故事閱讀 38,094評論 1 333
  • 序言:一個原本活蹦亂跳的男人離奇死亡,死狀恐怖旗们,靈堂內的尸體忽然破棺而出篓吁,到底是詐尸還是另有隱情,我是刑警寧澤蚪拦,帶...
    沈念sama閱讀 33,732評論 4 323
  • 正文 年R本政府宣布杖剪,位于F島的核電站,受9級特大地震影響驰贷,放射性物質發(fā)生泄漏盛嘿。R本人自食惡果不足惜,卻給世界環(huán)境...
    茶點故事閱讀 39,283評論 3 307
  • 文/蒙蒙 一括袒、第九天 我趴在偏房一處隱蔽的房頂上張望次兆。 院中可真熱鬧,春花似錦锹锰、人聲如沸芥炭。這莊子的主人今日做“春日...
    開封第一講書人閱讀 30,286評論 0 19
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽园蝠。三九已至,卻和暖如春痢士,著一層夾襖步出監(jiān)牢的瞬間彪薛,已是汗流浹背。 一陣腳步聲響...
    開封第一講書人閱讀 31,512評論 1 262
  • 我被黑心中介騙來泰國打工怠蹂, 沒想到剛下飛機就差點兒被人妖公主榨干…… 1. 我叫王不留善延,地道東北人。 一個月前我還...
    沈念sama閱讀 45,536評論 2 354
  • 正文 我出身青樓城侧,卻偏偏與公主長得像易遣,于是被迫代替她去往敵國和親。 傳聞我的和親對象是個殘疾皇子嫌佑,可洞房花燭夜當晚...
    茶點故事閱讀 42,828評論 2 345

推薦閱讀更多精彩內容