美文网首页
View绘制,刷新源码分析

View绘制,刷新源码分析

作者: ModestStorm | 来源:发表于2021-02-04 20:32 被阅读0次

invalidate和requestLayout的区别及使用
1、不管大小变不变化,调用invalidate 只会执行onDraw绘制,调用了之后就会强制执行onDraw(),不管视图是否发生了变化,我通过一个简单的示例试过了。
2、调用requestLayout 会触发onMeasure重新测量,并调用布局onLayout重新布局,但不会调用onDraw,总结就是,控件布局没有变化时,执行invalidate就可以;如果控件布局位置变化了,但显示不变,例如平移,只需调用requestLayout 就可以;如果位置变化了,显示也不一样了,那就要同时调用,调用顺序一般是requestLayout ,然后invalidate

相关文章

网友评论

      本文标题:View绘制,刷新源码分析

      本文链接:https://www.haomeiwen.com/subject/vykitltx.html