我正在学习自定义视图并想了解invalidate()和requestLayout().
请参考这个答案及其图表:
invalidate()告诉 Android 视图的状态发生了变化,需要重新绘制。
requestLayout()表示视图的大小可能已经改变,需要重新测量,然后重新绘制。
invalidate()将调用dispatchDraw(), draw(),onDraw()因此它会重新渲染视图。
requestLayout()另一方面,几乎可以完成从测量到重新渲染的所有工作。
为什么有这么多示例(甚至是TextView源代码)调用invalidate()然后requestLayout()就在下一行?
