经验总结-谈谈我对LayoutInflater中inflate方法的认识
2017-11-25 14:26
197 查看
我为什么要写这篇博文呢,就是自己太以为是了,总认为LayoutInflater这个类没什么,只是个用来插入布局的类而已,但是我每次用到这个类的时候,当调用inflate方法插入布局时,总是对它那几个重载方法的参数不了解,很难下手,所以自己决定把这个方法弄清楚,那现在开始我的博文吧。
inflate的几个重载方法介绍
inflate根据我的查找目前有四个重载方法,其中两个是只有两个参数的,另外两个是三个参数的。两个参数的方法中有一个方法第一个参数是int类型的,有一个是xmlparser对象。三个参数的方法中也是有一个方法第一个参数是int类型的,有一个是xmlparser对象。本篇博文只局限于我们常用的第一个参数问int类型的方法。
一、.inflate(int resource,ViewGroup root)解读
该重载方法一般接收两个参数,第一个参数就是要加载的布局id,第二个参数是指给该布局的外部再嵌套一层父布局,如果不需要就直接传null。
二、.inflate(int resource,ViewGroup root,boolean attachToRoot)解读
此段介绍我只是稍微看了一下源码,主要的还是参考了别人的博客来写的。如果大家有时间有精力,那就自己去看一下源码啦。介绍三个参数的作用:
1.如果root为null,attachToRoot将失去作用,设置任何值都没有意义。
2.如果root不为null,attachToRoot设为true,则会给加载的布局文件的指定一个父布局,即root。
3.如果root不为null,attachToRoot设为false,则会将布局文件外层的父layout属性进行设置,当该view被添加到父view当中时,这些layout属性会自动生效。
注:这个解释非常值得我们去掌握理解,大家如果有时间可以自己去写布局文件进行测试
4.在不设置attachToRoot参数的情况下,如果root不为null,attachToRoot参数默认为true。
inflate的几个重载方法介绍
inflate根据我的查找目前有四个重载方法,其中两个是只有两个参数的,另外两个是三个参数的。两个参数的方法中有一个方法第一个参数是int类型的,有一个是xmlparser对象。三个参数的方法中也是有一个方法第一个参数是int类型的,有一个是xmlparser对象。本篇博文只局限于我们常用的第一个参数问int类型的方法。
一、.inflate(int resource,ViewGroup root)解读
该重载方法一般接收两个参数,第一个参数就是要加载的布局id,第二个参数是指给该布局的外部再嵌套一层父布局,如果不需要就直接传null。
二、.inflate(int resource,ViewGroup root,boolean attachToRoot)解读
此段介绍我只是稍微看了一下源码,主要的还是参考了别人的博客来写的。如果大家有时间有精力,那就自己去看一下源码啦。介绍三个参数的作用:
1.如果root为null,attachToRoot将失去作用,设置任何值都没有意义。
2.如果root不为null,attachToRoot设为true,则会给加载的布局文件的指定一个父布局,即root。
3.如果root不为null,attachToRoot设为false,则会将布局文件外层的父layout属性进行设置,当该view被添加到父view当中时,这些layout属性会自动生效。
注:这个解释非常值得我们去掌握理解,大家如果有时间可以自己去写布局文件进行测试
4.在不设置attachToRoot参数的情况下,如果root不为null,attachToRoot参数默认为true。
相关文章推荐
- 经验总结-谈谈我对AppcompatActivity的认识
- 三个案例带你看懂LayoutInflater中inflate方法两个参数和三个参数的区别
- iOS_开发经验总结:键盘遮挡输入框时的解决方法
- 突破 Sql 防注入过滤程序继续注入的一点方法、经验、技巧总结
- (转)三个案例带你看懂LayoutInflater中inflate方法两个参数和三个参数的区别
- 三个案例带你看懂LayoutInflater中inflate方法两个参数和三个参数的区别
- RIS镜像中添加网卡和RAID卡驱动方法及实践经验总结
- 敏捷开发方法Scrum经验总结
- 让你提前认识软件开发---学习者的软件开发经验总结
- Windows Hook经验总结之一:API Hook方法汇总
- 【Unity资料经验总结】Unity几种改变物体或图片透明的方法
- 谈谈我对AIDL的使用方法总结
- 【经验总结】C#常用线程同步方法应用场景和实现原理
- Spotfire经验总结—累积百分比(柏拉图)的绘制方法
- 三个案例带你看懂LayoutInflater中inflate方法两个参数和三个参数的区别
- 经验总结之防止窗口闪烁的方法
- LayoutInflater和inflate()方法的用法
- 敏捷开发方法Scrum经验总结 推荐
- 三个案例带你看懂LayoutInflater中inflate方法两个参数和三个参数的区别