View工作流程

来源:互联网 发布:阿里云电视盒子破解 编辑:程序博客网 时间:2024/05/17 03:00

View的工作流程主要指measurelayoutdraw这三大流程,即测量、布局和绘制。

measure过程

1、Viewmeasure过程

2、ViewGroupmeasure过程

使用measureChildren遍历调用所有子View的onMeasure方法

layout过程

layout的作用是ViewGroup用来确定子元素的位置,当ViewGroup的位置被确定后。它在onLayout中会遍历所有子元素并调用其Layout方法,在Layout方法中onLayout方法会被调用。

View的默认实现中,View的测量宽/高和最终宽/高是相等的,测量宽/高形成于measure过程,最终宽/高形成于layout过程。日常开发中,我们可以认为View的测量宽/高就等于最终宽/高。

draw过程

  1. 绘制背景(background.draw(canvas)
  2. 绘制自己(onDraw
  3. 绘制子ViewdispatchDraw
  4. 绘制装饰(onDrawScrollBars
0 0
原创粉丝点击