Android控件架构详解

作者: GuaKin_Huang | 来源:发表于2016-04-30 22:36 被阅读418次

Android 读书笔记


声明:本笔记是本人学习过程中的记录,摘取自徐宜生的《Android群英传》,有兴趣的可以购买此书籍学习。


第三章 Android控件架构与自定义详解

  • Android中的每一个控件都会在界面占据一块矩形的区域,在Android中控件大概分为两类ViewGroup控件View控件。ViewGroup作为父控件可以包含多个View控件,并管理其包含的控件。通过ViewGroup控件,整个界面形成了一个控件树,上层控件负责下层控件的测量绘制,并传递交互事件。在每棵控件树的顶部,都有一个ViewParent 对象,即控件树的核心,所有的交互管理事件都由他来统一调度和分配
  • Android界面架构图:
View树结构图 UI界面架构图
  • 我们看UI界面架构图可以知道,每个Activity都包含一个Window对象(在Android中通常由PhoneWindow来实现)。
  • PhoneWindow将一个DecorView设置为整个应用窗口的根View
  • DecorView作为窗口的顶层视图,封装了一些窗口操作的通用方法。DecorView将要显示具体内容都呈现在PhoneWindow上,这里所有的View的监听事件都通过WindowManagerService来进行接收,并通过Activity对象回调相应的OnClickListener。在显示上,它将屏幕分为两部分,一个是TitleView,一个是ContentView【它是一个ID为content的Framelayout,activity_main.xml就是设置在Framelayout里的】。
  • 标准视图树
标准视图树
  • 在代码中,当程序在onCreate()方法中调用setContentView()方法后,ActivityManagerService会回调OnResume()方法,此时系统会把整个DecorView添加到PhoneWindow中,并让其显示出来

相关文章

网友评论

    本文标题:Android控件架构详解

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