初始ViewRoot和DecorView

ViewRoot

ViewRoot对应ViewRootImple类,是WindowManager与DecorView的纽带。在ActivityThread类中,创建好Activity后,将DecorView添加到Window中,并创建一个ViewRootImpl与DecorView关联。

DecorView

DecorView是一个FrameLayout是Activity中的顶级View,里面包含一个竖直方向的LinearLayout,这个LinearLayout有上下两个部分:上面是标题栏,下面是内容栏(id:content)。我们通过setContentView设置的布局就是被加到内容栏之中

  • 如何得到我们设置的View?
ViewGroup viewGroup = findViewById(android.R.id.content);
viewGroup.getChildAt(0);
  • View层的事件都先经过DecorView,然后才传递到我们的View。

你可能感兴趣的:(初始ViewRoot和DecorView)