LayoutInflater.inflate()用法
2016-04-25 09:40
316 查看
inflate()的作用就是将一个用xml定义的布局文件查找出来,注意与findViewById()的区别,inflate是加载一个布局文件,而findViewById则是从布局文件中查找一个控件。
1.获取LayoutInflater对象有三种方法
LayoutInflater inflater=LayoutInflater.from(this);
LayoutInflater inflater=getLayoutInflater();
LayoutInflater inflater=(LayoutInflater)this.getSystemService(LAYOUT_INFLATER_SERVICE);
2.关于LayoutInflater类inflate(int resource, ViewGroup root, boolean attachToRoot)方法三个参数的含义
resource:需要加载布局文件的id,意思是需要将这个布局文件中加载到Activity中来操作。
root:需要附加到resource资源文件的根控件,什么意思呢,就是inflate()会返回一个View对象,如果第三个参数attachToRoot为true,就将这个root作为根对象返回,否则仅仅将这个root对象的LayoutParams属性附加到resource对象的根布局对象上,也就是布局文件resource的最外层的View上,比如是一个LinearLayout或者其它的Layout对象。
attachToRoot:是否将root附加到布局文件的根视图上
1.获取LayoutInflater对象有三种方法
LayoutInflater inflater=LayoutInflater.from(this);
LayoutInflater inflater=getLayoutInflater();
LayoutInflater inflater=(LayoutInflater)this.getSystemService(LAYOUT_INFLATER_SERVICE);
2.关于LayoutInflater类inflate(int resource, ViewGroup root, boolean attachToRoot)方法三个参数的含义
resource:需要加载布局文件的id,意思是需要将这个布局文件中加载到Activity中来操作。
root:需要附加到resource资源文件的根控件,什么意思呢,就是inflate()会返回一个View对象,如果第三个参数attachToRoot为true,就将这个root作为根对象返回,否则仅仅将这个root对象的LayoutParams属性附加到resource对象的根布局对象上,也就是布局文件resource的最外层的View上,比如是一个LinearLayout或者其它的Layout对象。
attachToRoot:是否将root附加到布局文件的根视图上
相关文章推荐
- [Leetcode刷题总结系列][Dynamic programming]198. House Robber
- 在XCode中使用TODO FIXME等标记
- 使用TextRank算法为文本生成关键字和摘要
- PHP语言 -- jquery
- 缓存
- log4j中的配置详解
- Android 视频截图方法
- HDU1576 A/B
- ubuntu14.04下phpMyAdmin安装
- java简单排序之选择排序
- PCA(主成分分析)的数学原理
- node.js Hello world
- ISE与matlab/simulink联仿
- Leetcode no. 15
- Ubuntu14.04下安装opencv3.0
- node.js node包管理器--npm
- 机房水题欢乐赛 2016-04-25 下午
- (转载)浅析Hadoop文件格式
- TableLayout的属性
- eclipse启动Tomcat正常,访问报错404