ConstraintLayout如何优化布局性能
生活随笔
收集整理的這篇文章主要介紹了
ConstraintLayout如何优化布局性能
小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.
參考:
- 了解使用 ConstraintLayout 的性能優(yōu)勢(shì)
原理:
- 減少了層級(jí)
在繪制視圖時(shí),是對(duì)視圖樹(shù)進(jìn)行自頂而下的遍歷操作,因此視圖嵌套越多,設(shè)備繪制視圖所需的時(shí)間和計(jì)算功耗就越多。
測(cè)量布局性能工具:
- Systrace
- 使用在API 24 引入的Window.OnFrameMetricsAvailableListener,調(diào)用以下代碼,可以開(kāi)始記錄每個(gè)幀的界面操作:
在能夠獲取時(shí)間信息之后,該應(yīng)用觸發(fā)?frameMetricsAvailableListener()回調(diào)。我們對(duì)測(cè)量/布局的性能感興趣,因此,我們?cè)跈z索實(shí)際幀的持續(xù)時(shí)間時(shí)調(diào)用了?FrameMetrics.LAYOUT_MEASURE_DURATION
Window.OnFrameMetricsAvailableListener {_, frameMetrics, _ ->val frameMetricsCopy = FrameMetrics(frameMetrics);// Layout measure duration in nanosecondsval layoutMeasureDurationNs = frameMetricsCopy.getMetric(FrameMetrics.LAYOUT_MEASURE_DURATION); 復(fù)制代碼更多信息,參閱FrameMetrics。
總結(jié)
以上是生活随笔為你收集整理的ConstraintLayout如何优化布局性能的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。
- 上一篇: Resolving Strong Ref
- 下一篇: LinkDevelop平台新建一个产品