2013-04-09 45 views
7

抽象类的膨胀方法具有作为膨胀方法的第二个参数,该方法需要使用ViewGroup root。从文档中,它被提及为“可选视图是生成的层次结构的父级”。如何使用LayoutInflater类的膨胀方法中的第二个参数Android

有人可以举例说明如何使用此参数吗?你会在那里放什么? A ViewGroup可以是任何类型的布局,如LinearLayout

我不太明白如何处理这个参数。如果你正在膨胀的视图不是在这里输入的布局的一部分,那么它会给出一个错误。不明白它的目的。从文档

更多:

public View inflate (XmlPullParser parser, ViewGroup root)

Added in API level 1 Inflate a new view hierarchy from the specified xml node. Throws InflateException if there is an error.

重要性能方面的原因,查看通货膨胀在很大程度上依赖于被在编译的时候做的XML文件的预处理。因此,目前不可能在运行时通过纯XML文件使用LayoutInflaterXmlPullParser

参数 解析器包含视图层次结构描述的XML DOM节点。

root可选视图是生成的层次结构的父级。 返回 充气层次结构的根视图。如果提供了root,这是根View;否则它就是膨胀的XML文件的根源。

+0

我很确定你可以传递'null',因为它是一个可选参数。 – midhunhk 2013-04-09 04:51:17

回答

2

我真的不确定哪一部分会让你困惑,说实话。您可以传入任何ViewGroup,以成为您动态创建的视图的父项。

例如:

private static View mView = inflater.inflate(R.layout.fragment_featured, container, false); 

这将膨胀容纳在容器内的fragment_featured xml文件的布局(作为父)。容器ViewGroup的类型取决于您。

2

充气方法返回膨胀XML的父视图

  • 如果你不通过根ViewGroup中,充气XML根查看 将返回

  • 如果你通过根ViewGroup,root查看根ViewGroup将 返回