Android inflate 方法理解

方法原型:

  1. 两个参数:inflate(int resource, ViewGroup root)
  2. 三个参数:inflate(int resource, ViewGroup root, boolean attachToRoot)

方法1内部调用方法2

a. 如果root为null,attachToRoot将失去作用,设置任何值都没有意义,加载的布局文件最外层的所有layout属性会失效,由父布局来重新指定.

b. 如果root不为null,attachToRoot不论是true或false,加载的布局文件最外层的所有layout属性都有效,唯一的不同是:
attachToRoot为true时,会自动调用root.addView(view, params),最后返回root;
attachToRoot为false时,会返回view,需手动调用root.addView(view, params).

c. 在不设置attachToRoot参数的情况下,如果root不为null,attachToRoot参数默认为true.

参考链接:

Android LayoutInflater原理分析,带你一步步深入了解View(一)

Android下LayoutInflater的正确使用姿势

发布了31 篇原创文章 · 获赞 20 · 访问量 3万+

猜你喜欢

转载自blog.csdn.net/SkySmile1992/article/details/78071649