IOS界面開(kāi)發(fā)利器 --- FlexLib
前言
? ? ? ?做過(guò)幾年IOS開(kāi)發(fā)的都會(huì)有這樣一種感覺(jué)甩栈,就是界面適配工作越來(lái)越難做了泻仙,原來(lái)iphone機(jī)型少,問(wèn)題不大量没,但隨著現(xiàn)在iphone機(jī)型越來(lái)越豐富玉转,這個(gè)問(wèn)題更加嚴(yán)重了∨固悖總結(jié)一下究抓,ios開(kāi)發(fā)中碰到的問(wèn)題如下:
1.對(duì)于稍復(fù)雜點(diǎn)的界面,在xib中設(shè)置autolayout是件極其容易出錯(cuò)的事情袭灯,如果不用xib改用masonry刺下,則需要寫大量的代碼,而且無(wú)法直觀的看到效果
2.同一個(gè)項(xiàng)目妓蛮,大量控件的屬性都是一樣的怠李,但是你不得不在xib或者代碼中一次又一次的重復(fù)設(shè)置同樣的屬性
3.對(duì)于稍微大一些的工程,每做一次改動(dòng)如果想看到效果蛤克,必須編譯運(yùn)行才行捺癞,這需要大量的時(shí)間,往往人的耐心就是這樣耗沒(méi)的(??ˇ?ˇ??)
4.iphonex一出构挤,多少工程都需要大量的工作來(lái)適配髓介,包括微信都出了三版來(lái)做適配工作,太悲催了(??ˇ?ˇ??)
5. UITableView中cell高度的計(jì)算筋现,一不小心cell的內(nèi)容就亂套了
6. 對(duì)于設(shè)計(jì)復(fù)雜的按鈕高亮效果唐础,UIButton顯得有些力不從心
使用FlexLib, 可以大幅提高ios的界面開(kāi)發(fā)速度,并且適應(yīng)性更好矾飞。
FlexLib的特性
? ? ? ? FlexLib就是為了解決這些問(wèn)題而產(chǎn)生的一個(gè)布局框架一膨。該布局框架基于flexbox模型,這個(gè)模型是web端的布局標(biāo)準(zhǔn)洒沦”鳎基于flexbox模型,F(xiàn)lexLib提供了強(qiáng)大的布局能力申眼,并且易于使用瞒津。該框架主要特性如下:
1.該框架使用xml文件保存頁(yè)面布局蝉衣,因此你可以直接復(fù)制粘貼
2.支持將工程中常用的屬性寫在獨(dú)立的style文件中,然后在xml布局中直接引用該風(fēng)格即可巷蚪,避免在每個(gè)xml文件中都重復(fù)寫入大量同樣的樣式病毡。
3.該框架支持界面的熱更新,可以在程序運(yùn)行時(shí)修改xml布局屁柏,然后按一下Cmd+R即可立刻在模擬器中看到修改后的效果啦膜,大大方便了開(kāi)發(fā)調(diào)試。
4.該框架自動(dòng)適配包括iPhone X在內(nèi)的所有機(jī)型前联,無(wú)需單獨(dú)為iPhone X進(jìn)行適配工作
5.支持自動(dòng)計(jì)算UITableCell的高度尝丐,不用每次都手動(dòng)計(jì)算其高度
6.通過(guò)FlexTouchView息楔,可以對(duì)復(fù)雜的按下效果進(jìn)行組合吗货,輕松實(shí)現(xiàn)高亮等效果议双。
該框架的詳細(xì)信息:
https://github.com/zhenglibao/FlexLib