android - 如何在 Android 上通过 XmlPullParser 和 LayoutInflater 使用外部 xml?

标签 android layout-inflater xmlpullparser

我想使用外部(如/storage/sdcard0/main.xml)xml 作为 LayoutInflater 的布局。 所以我发现 XmlPullParser 使用外部 xml。但它没有用!!

如何编写运行在XmlPullParser和LayoutInflater上的xml源码?

最佳答案

LayoutInflater 在运行时不适用于任意 xml。查看关于 LayoutInflater.inflate 的评论.

Important For performance reasons, view inflation relies heavily on pre-processing of XML files that is done at build time. Therefore, it is not currently possible to use LayoutInflater with an XmlPullParser over a plain XML file at runtime.

平台在 Resources.java 中执行向下转换做出这个假设。

// XXX note that for now we only work with compiled XML files.
// To support generic XML files we will need to manually parse
// out the attributes from the XML file (applying type information
// contained in the resources and such).
XmlBlock.Parser parser = (XmlBlock.Parser)set;

关于android - 如何在 Android 上通过 XmlPullParser 和 LayoutInflater 使用外部 xml?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19754031/

相关文章:

android - 以编程方式获取按钮数组,无需对 id 进行硬编码并通过 findViewById() 获取它

android - XmlPullParser getAttributeValue 返回 null

java - 安卓 :Parse XML Data: Tags with arguments

java - Android、XML View 文件和 Java 后端,我如何使用后端 Java 创建自定义 View ?

android - 如何在ubuntu的Android Studio中设置文本格式

java - 从摄像头并行录制视频到 Android 上的 OpenCV 处理

Android LiveData 值未从后台发送

android - 如何将另一个 View 膨胀到 LinearLayout 中?

android - onclick 不适用于 inflated layout

Android 的 XMLPullParser getAttributeValue 正在从字符串中删除前导零