view的绘制流程大家都知道,我简单说一下:
onMesure() ---测量view大小
onLayout() ---对在viewgroup中的子view进行排版
onDraw() ---画出view
invalidate() postInvalidate() requestLayout()这三个方法在自定义view中常用于刷新重绘view视图,在这里我们了解一下他们的区别。
invalidate() postInvalidate()
共同点:都是调用onDraw()方法,然后去达到重绘view的目的
区别:invalidate()用于主线程,postInvalidate()用于子线程
requestLayout()
也可以达到重绘view的目的,但是与前两者不同,它会先调用onLayout()重新排版,再调用ondraw()方法。