LayoutInflater.inflate方法中root和at
2019-10-11 本文已影响0人
12313凯皇
很多时候我们都需要使用这个方法来加载一个View
,但是以前没怎么在意过后两个参数的含义,今天在自定义控件的时候就碰到了问题,于是特地记录一下。
参考文章:三个案例带你看懂LayoutInflater中inflate方法两个参数和三个参数的区别
文中有详细的例子,这里就不再赘述了,下面总结一下好了
先放上方法体:
public View inflate(int resource, @RecentlyNullable ViewGroup root, boolean attachToRoot)
- 第一个参数相信大家都很熟悉,就是所要加载的布局的资源ID。
- 第二个参数的意义是将
resource
指定的布局添加到root
中,添加的过程中resource
所指定的的布局的根节点的各个属性都是有效的。 - 第三个参数表示是否将这个布局加入到
root
中去。
注意:这里如果设置为false
的话,当手动(addView
)加入到root
中去的时候,该资源文件的layout_width
和layout_height
属性将会失效。
先暂时写这些吧