您的位置:首页 > 移动开发 > Android开发

[基础] 5.1 Android View的绘制过程

2018-03-12 11:50 281 查看

View的绘制过程

View的绘制首先起于ViewRootImpl,并且View的三个流程也是通过ViewRootImpl来完成。

过程中有很多组件的身影,比如WindowManager,ActivityThread,Activity,DecorView,ViewRootImpl(连接WindowManager和DecorView的纽带)

绘制流程

View的绘制首先起于ViewRootImpl,并且View的三个流程也是通过ViewRootImpl来完成。它经过measure、layout和draw三个过程才能最终将一个View绘制出来,其中measure用来测量View的宽高,layout用来确定View在父容器中的放置位置,而draw则负责将View绘制在屏幕上。

ActivityThread创建Activity对象,将DecorView添加到Window中,同时会创建viewRootImpl对象,并将ViewRootImpl对象和DecorView建立关联。

View的绘制过程从ViewRootImpl的performTraversals方法开始,它经过mwasure、layout、draw三个过程最终将一个View绘制出来

源码解读

Android View源码解读:浅谈DecorView与ViewRootImpl

参考资料

android-自定义View解决wrap_content无效的问题 https://www.aliyun.com/jiaocheng/40071.html

自定义View http://vivianking6855.github.io/2016/11/09/Android-CustomizedView/

自定义View原理系列

http://blog.csdn.net/carson_ho/article/details/56009827

http://blog.csdn.net/carson_ho/article/details/56011112

http://blog.csdn.net/carson_ho/article/details/56011153
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: