阅读量:4
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 绘制的流程包括测量大小、布局位置、绘制内容等几个步骤,最终完成整个绘制操作并将结果显示在屏幕上。