传入LayoutInflater.inflate()的ViewGroup有什么用?

传入或不有什么区别?

新手

阅读 4.7k
2 个回答

ViewGroup是你inflate的xml的父视图。
传的话inflate时会自动把xml文件中的layout添加到ViewGroup上。
如果不传的话inflate只是把xml文件解析成view,到ViewGroup添加xml对应的layout时要指定LayoutParams,也就是在xml文件中定义的android:layout_*

 view = LayoutInflater.from(mActivity).inflate(R.layout.pepelu, null);
   
viewGroup.addView(view, ViewGroup.LayoutParams.MATCH_PARENT,
                ViewGroup.LayoutParams.MATCH_PARENT);

深入了解的话,推荐博文:
郭霖:
http://blog.csdn.net/guolin_blog/article/details/12921889
bxbxbai:
http://bxbxbai.github.io/2014/11/19/make-sense-of-layoutinflater/

不传入你的子View没办法生成相应的LayoutParams,传入帮助生成LayoutParams

推荐问题