1、控件的宽高什么时候生效
当一个控件在一个容器中时,其设置的layout_width和layout_height会生效;
若一个控件不在一个容器中,layout_width和layout_height就不会生效;
2、inflate不同参数下不同情况
View inflate(int resource, ViewGroup root, boolean attachToRoot)
作用:Inflate a new view hierarchy from the specified xml resource.
参数说明:
①resource是要加载的布局id
②root是布局将插入到的 ViewGroup
③attachToRoot表示是否在inflate方法生效后将布局附加到ViewGroup上
④返回的View:inflate会将加载的布局文件解析成一个View DOM树,最顶层的View即为根视图,也就是返回的View
不同参数下的情况:
①如果root为null,布局的layout_width和layout_height会失效,attachToRoot也无效。
当通过addView(View)将这个宽高失效的View添加到一个容器中时,容器内部,会调用generateDefaultLayoutParams()生成一个LayoutParams赋值给这个View。
②如果root不为null,attachToRoot设为true,则会将加载的布局附加到root布局中。
③如果root不为null,attachToRoot设为false&#