Android群英传 第三章-控件架构与自定义控件

3.1.控件架构

Android空间分为两类 ViewGroup控件和View控件
[图片]
如:3.1
上层控件负责下层控件的测量和绘制,并且传递交互事件。
通常在Activity中使用findViewById()方法,就是在空间树中以树的深度优先遍历来查找
通常在setContenView()之后,布局内容才真正显示出来

View objects都在Android.view package
这些objects有Editext,Spinner,TextView这些action(动作类)的;也有AnalogClock(时针、分针的),Gallery(画廊效果),DataPicker,TimePicker,and VideoView

2.安卓界面的架构图

  1. 每个Activity包含一个Window对象(一般用PhoneWindow来实现)
  2. PhoneWindow将DecorView作为根View(作为顶层视图,并且封装了窗口操作的通用方法),进行了具体内容的呈现
  3. 所有View的监听事件,通过WindowManagerService进行接收,通过Activitty进行onClickListener的回调
  4. DecorView分为两部分,TitleView和ContentView,后者是一个ID为content的FrameLayout
  5. 用户可以通过requestWindowFeature(Window.FEATURENO_TITLE)进行全屏设置,视图树中布局就只有Content了,因此一定要在setContentView之前设置
  6. 在onCreate()调用setContentView()后,ActivityManagerService会调用onResume(),此时系统才会将DecorView添加到PhoneWindow中,并显示出来
    这里写图片描述
  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

猎羽

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值