Android View的绘制流程(二)

2018-12-27  本文已影响6人  BlingBest

Layout


         Layout过程用来确定View在父容器中的布局位置,它是由父容器获取子View的位置参数后,调用子View的layout方法并将位置参数传入实现的,ViewRootImpl的performLayout代码如下:

Draw


Draw操作用来将控件绘制出来,绘制的流程从perfromDraw方法开始,核心代码如下:

private void draw(boolean fullRedrawNeeded){

....

draw(fullRedrawNeeded);

...

}

         可以看到最终调用到每个View的draw方法绘制每个具体的View,绘制基本上可以分为六个步骤:

步骤1 绘制View的背景 步骤2 保存canvas图层 为fading做准备 步骤3 绘制View的内容 步骤4  绘制子View 步骤5  绘制View的fading边缘并恢复图层 步骤6
上一篇 下一篇

猜你喜欢

热点阅读