博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
动态载入Layout 与 论Activity、 Window、View的关系
阅读量:6253 次
发布时间:2019-06-22

本文共 560 字,大约阅读时间需要 1 分钟。

1)动态载入Layout的代码是

getWindow().setContentView(LayoutInflater.from(this).inflate(R.layout.main, null));

它等同于

setContentView(R.layout.main);

事实上

getWindow().setContentView(LayoutInflater.from(this).inflate(R.layout.main, null))  是 setContentView(R.layout.main)

的底层实现

2)论Activity、 Window、View的关系

类似于MVC模式,Activity为控制器。Window为模型,View为真正的视图。

a。一个Activity 构造的时候一定会构造一个Window(PhoneWindow)。而且仅仅有一个

b,这个Window有一个ViewRoot(View /  ViewGroup)

c,ViewRoot通过addView方法来加入View,如TextView,Button

d,这些View的事件监听,是由WindowManagerService来接收信息。而且回调Activity函数,

比方onClickListener。onKeyDown等。

转载地址:http://krjsa.baihongyu.com/

你可能感兴趣的文章
将sublime打造成python的IDE开发工具
查看>>
Enterprise Architect(EA)的一些使用技巧和心得(逐渐添加)
查看>>
Apache的安全性,SSL在Solaris 10
查看>>
CentOS 5.11开启VNC访问
查看>>
Mac Homebrew 利器
查看>>
源码安装apache 虚拟主机
查看>>
discuz 数据库密码修改后 管理后台不能登录问题
查看>>
ISA Server 2006简介
查看>>
TCP-IP协议详解(13) DNS协议
查看>>
httpd网站服务
查看>>
mysql启动报错处理
查看>>
4 ways to pass parameter from JSF page to backi...
查看>>
Delphi中获取Unix时间戳及注意事项
查看>>
rvm使用
查看>>
iOS 开发一些小技巧
查看>>
8月5日起OCP电子证书正式推行
查看>>
【原创】DataNode源码演绎 第一回
查看>>
垃圾回收概念与算法
查看>>
JDBC读取MySQL的BLOB类型
查看>>
转帖:Lotus Notes安装和使用的常见问题
查看>>