Android运行时布局

问题描述:

在我的andriod应用程序中,我在运行时得到了一个xml。 如何从未编译的xml膨胀视图?Android运行时布局

xml是用户从他的文件系统中选择的。 未编译。 因此,我没有任何的参考,如“R.layout.my_layout”

+0

请提供调用您所获得的XML的代码。你可能会用错误的方式来调用它,但是我们需要看看你在做什么才能提供帮助。 – Blumer 2011-03-01 17:27:19

尝试LayoutInflator.inflate()

LayoutInflator.from(this).inflate(R.layout.my_layout, parent, true);

其中this是指含有活性parent是要膨胀到的ViewGroup。如果您只想取回视图层次结构并将其自己添加到ViewGroup中,您还可以将其用于null父级(以及false)。

目前无法使用标准android API完成此操作。需要包含此布局的XML文件中生成时要被处理能够在运行时夸大他们

见LayoutInflater这里http://developer.android.com/reference/android/view/LayoutInflater.html

文档出于性能的考虑,查看通货膨胀在很大程度上依赖于在构建时完成XML 文件的预处理。因此,目前不可能在运行时通过普通的XML文件使用带有XmlPullParser的LayoutInflater;它只 作品从一个编译的资源返回XmlPullParser(R.something文件。)

一个有点乏味选择是写自己的XML解析器解析XML和编程构建布局。