我使用 Android Studio Profiler(记录的系统跟踪)检查了我的 UI,得到了以下结果: 正如您在此处看到的,当我打开我的片段时,加载一帧需要 28 毫秒。我们还可以看到,几乎所有的时间都被遍历和测量所占用。我试图重构我的 xml,现在它看起来像:
<MotionLayout>
<SwiperefreshLayout>
<NestedScrollView>
<LinearLayout>
<include
layout="cardView1">
<include
layout="cardView2">
//..........
<include
layout="cardVie7">
<LinearLayout>
<NestedScrollView>
<SwipeRefreshLayout>
<MotionLayout>
它只是一个复杂的 UI,里面有很多嵌套的卡片,里面可以有 recycleview 和其他内容。如您所见,在我重构之后,帧时间仍然存在一些问题。有没有办法提高我的 UI 性能,或者至少可以获得有关问题的更详细信息以及为什么绘制 UI 需要这么长时间?