Android借助displaylist將布局輸出為能夠顯示的圖像,布局優(yōu)化的很重要的一個點(diǎn)是防止過度嵌套,有如下幾個點(diǎn)
1.使用RelativeLayout替代LinearLayout
LinearLayout雖然使用上比較方便,能夠?qū)懗霰容^整齊的布局,但是如果布局太復(fù)雜就會導(dǎo)致嵌套過多,引起性能問題,所以對于復(fù)雜的布局要盡量減少LinearLayout的使用,尤其是子布局
2.include+merge
把需要重復(fù)使用的布局抽離出來成一個布局文件,最外層使用merge標(biāo)簽代替layout,可以減少層級
3.ViewStub
viewstub是view的子類,輕量級View, 隱藏的,沒有尺寸的View,可以用來在程序運(yùn)行時簡單的填充布局文件
4.ConstaintLayout
新版本API添加的,但是會有低版本適配的問題
當(dāng)然,布局優(yōu)化也是要結(jié)合實(shí)際情況來做的,對于比較復(fù)雜,控件元素較多的布局就需要合理的優(yōu)化,而對于一些簡單的,控件元素少的布局,也不需要做過多關(guān)注,初始創(chuàng)建的時候?qū)懞貌季志涂梢粤?/p>
displaylist參考資料:http://www.itdecent.cn/p/7bf306c09c7e