android view绘制的流程是什么
Android View 绘制的流程大致包括以下几个步骤:
-
请求绘制:当 View 需要被绘制时,会调用
invalidate()方法触发重绘操作。在invalidate()方法中,会调用ViewRootImpl的scheduleTraversals()方法,该方法最终会调用scheduleTraversals()方法来开始进行绘制操作。 -
测量大小:在进行绘制操作之前,需要对 View 进行测量,确定其大小和位置。首先会调用
measure()方法来测量 View 的大小,这个过程包括测量 View 自身的大小以及其子 View 的大小。 -
布局位置:测量完成后,会调用
layout()方法来确定 View 的布局位置,将 View 放置在父容器中的指定位置。 -
绘制内容:最后调用
draw()方法来进行实际的绘制操作,在draw()方法中,会调用 View 的onDraw()方法来绘制 View 的内容,同时也会绘制其子 View 的内容。 -
绘制完成:当绘制操作完成后,会调用
ViewRootImpl的finishTraversal()方法来完成整个绘制流程,并将绘制结果显示在屏幕上。
总的来说,Android View 绘制的流程包括测量大小、布局位置、绘制内容等几个步骤,最终完成整个绘制操作并将结果显示在屏幕上。
相关问答