LayoutInflate.inflate()三个参数含义

LayoutInflate.inflate(int resourceId, ViewGroup root, boolean attachToRoot)三个参数含义:

首先明白下面知识点:

给控件所指定的layout_width和layout_height到底是什么意思?该属性的表示一个控件在容器中的大小,就是说这个控件必须在容器中,这个属性才有意义,否则无意义。

当:root == null,无论attachToRoot 是否ture还是false

ResourceId的根节点没有依赖的父布局(容器),所以width和height属性失效

当:root != null,如果attachToRoot = ture;

则将resourceId对应得布局加载到root中,并将root返回;resourceId中的width和height属性有效

当:root != null,如果attachToRoot = false;

则将resourceId对应的view设置容器为root,但是不添加到root中,resourceId中的width和height属性有效

原文地址:https://www.cnblogs.com/x-bing/p/6744471.html