通过下载的xml字符串膨胀并呈现UI视图

时间:2018-04-15 12:31:36

标签: android android-layout xml-parsing layout-inflater android-xmlpullparser

我有兴趣从服务器下载UI视图的xml布局,并将其作为xml字符串充气 我在doc中看到的是:

  

因此,目前无法使用LayoutInflater   运行时在纯XML文件上运行XmlPullParser;它只适用于   XmlPullParser 从已编译的资源(R.something文件)返回。

我真的不明白突出部分(我的重点) 如果我有一些“虚拟”xml文件来获取XmlPullParser我可以膨胀我的xml字符串吗?

总的来说,如果不可能有什么替代品呢? 我的意思是除此之外不需要像反应原生那样的巨大学习曲线

1 个答案:

答案 0 :(得分:0)

由于LayoutInflater的异常实现,您无法从纯XML文件中扩展视图层次结构。根据{{​​3}},以下inflate方法不适用于XmlPullParser的简单实例。

    View inflate(XmlPullParser parser, ViewGroup root)
    View inflate(XmlPullParser parser, ViewGroup root, boolean attachToRoot)

实现要求第一个参数parserthe source code的实例。该类实现class XmlBlock.Parser,接口扩展了三个接口:

因此,对于XmlPullParser方法,简单的inflate是不够的。 API应该是:

    View inflate(XmlBlock.Parser parser, ViewGroup root)
    View inflate(XmlBlock.Parser parser, ViewGroup root, boolean attachToRoot)