该LayoutInflater.inflate
文档是不看好的目的十分清楚我的attachToRoot
参数.
attachToRoot:膨胀的层次结构是否应附加到根参数?如果为false,则root仅用于为XML中的根视图创建LayoutParams的正确子类.
有人可以更详细地解释,特别是根视图是什么,并且可能显示一个行为true
和false
值之间的变化的例子?
我有一个ImageView
我附加到MenuItem
它ActionView
(项目出现在ActionBar
).此视图的布局来自XML.我这样膨胀它:
ImageView actionView = (ImageView) layoutInflater.inflate(
R.layout.action_view_layout, null);
Run Code Online (Sandbox Code Playgroud)
这似乎工作正常.然而; root
在调用中传递null inflate()
使Lint对我大喊:
避免将null作为视图根传递(需要解析膨胀布局的根元素上的布局参数)
在我的具体情况下,我似乎可以在没有root的情况下进行管理,但我宁愿让代码尽可能正确.问题是,我不确定哪个View
应该用作根.这个答案说它应该是"围绕想要膨胀的视图对象的小部件".但这意味着什么呢?动作栏的那一个?活动?还有别的吗?
更新:阅读答案让我怀疑我正确的做法是:
ActionBar
View
对应的MenuItem
ViewGroup
这似乎有效.任何人都可以确认或否认这是否应该做什么?