View的绘制机制

一、view树的绘制流程

measure->layout->draw

 

二、measure

 View相关-View的绘制机制

1.ViewGroup.LayoutParams

2.MeasureSpec(测量规格)**

一个View的测量过程是由父布局的MeasureSpec和该View的LayoutParams决定的。

 

 

重要方法:

1.measure()调用onMeasue()

2.onMeasure()(自定义view)调用setMeasuredDimension

 View相关-View的绘制机制

3.setMeasuredDimension()(重要)

 View相关-View的绘制机制

 

三.Layout

 View相关-View的绘制机制

onLayout()具体自己实现

 View相关-View的绘制机制

 

四、draw-两个容易混淆的方法

1.invalidate():视图大小发生变化时请求调用

2.requestLayout():布局发生变化时请求调用(自定义视图时用,会自动调用measure和layout方法不会调用draw)

相关文章: