Android系統(tǒng)每隔16ms發(fā)出信號,觸發(fā)ui渲染,幀率60fps,人眼無法感知。渲染超過16ms就會(huì)出現(xiàn)掉幀現(xiàn)象,不流暢。
可以用系統(tǒng)工具Hierarchy View分析布局層級
導(dǎo)致UI性能問題原因:
1.?太多重疊的背景
2.?太多重疊的view
3.?layout太多層級
解決方法:
1.?去除一些在最底層的永遠(yuǎn)不會(huì)顯示的背景
2.?使用、(避免include的layout又產(chǎn)生多一層級)、(可指定view,需要顯示的時(shí)候再加載) 標(biāo)簽優(yōu)化布局
3.?盡量用RelativeLayout、ConstrainLayout布局
PS:可用于替換目前相對比較復(fù)雜控件的Material Design控件
????CardView 帶圓角的FrameLayout,可用于列表的單項(xiàng)中
????GridLayout ?網(wǎng)格布局,替換tablelayout
????AppBarLayout 頂部欄
????CoordinatorLayout 可實(shí)現(xiàn)滑動(dòng)懸浮