Android借助displaylist將布局輸出為能夠顯示的圖像,布局優化的很重要的一個點是防止過度嵌套,有如下幾個點
1.使用RelativeLayout替代LinearLayout
LinearLayout雖然使用上比較方便,能夠寫出比較整齊的布局,但是如果布局太復雜就會導致嵌套過多,引起性能問題,所以對于復雜的布局要盡量減少LinearLayout的使用,尤其是子布局
2.include+merge
把需要重復使用的布局抽離出來成一個布局文件,最外層使用merge標簽代替layout,可以減少層級
3.ViewStub
viewstub是view的子類,輕量級View, 隱藏的,沒有尺寸的View,可以用來在程序運行時簡單的填充布局文件
4.ConstaintLayout
新版本API添加的,但是會有低版本適配的問題
當然,布局優化也是要結合實際情況來做的,對于比較復雜,控件元素較多的布局就需要合理的優化,而對于一些簡單的,控件元素少的布局,也不需要做過多關注,初始創建的時候寫好布局就可以了
displaylist參考資料:http://www.lxweimin.com/p/7bf306c09c7e