当前位置: 代码迷 >> Android >> Android运行过程中怎么动态加载布局xml文件
  详细解决方案

Android运行过程中怎么动态加载布局xml文件

热度:29   发布时间:2016-04-28 00:45:30.0
Android运行过程中如何动态加载布局xml文件
本帖最后由 juckxu 于 2015-05-25 14:59:01 编辑
大致情况如下:
1.App运行时没有a.xml,b.xml等文件.
2.a.xml和b.xml保存在服务器中,app连接上服务器成功后获取a.xml和b.xml
我想实现的功能是:App中动态显示a.xml和b.xml的布局界面.
这样做的原因是不同的服务器中a.xml文件的内容不同。

这里有一个问题向大家请教 ,app中如何显示a.xml的布局界面?
------解决思路----------------------
没有写过这样的代码,提供一个思路,楼主可以试试
LayoutInflater有一个方法
public View inflate (XmlPullParser parser, ViewGroup root)

看起来,这个方法的含义是传入一个xml dom,返回一个View

下面的方法可能可以实现你的要求
1. 通过 XmlPullParserFactory.newInstance(); 来创建一个XmlPullParser对象。
2. 调用XmlPullParser对象的setInput方法来传给它一个xml 文件流。
3. 将XmlPullParser对象传给LayoutInflater.inflate  最终生成一个View。

查文档想出来的方法,但是我完全没有试过,楼主可以试试看可不可行。具体文档楼主可以参考
http://developer.android.com/reference/android/view/LayoutInflater.html
http://developer.android.com/reference/org/xmlpull/v1/XmlPullParser.html
------解决思路----------------------
引用:
没有写过这样的代码,提供一个思路,楼主可以试试
LayoutInflater有一个方法
public View inflate (XmlPullParser parser, ViewGroup root)

看起来,这个方法的含义是传入一个xml dom,返回一个View

下面的方法可能可以实现你的要求
1. 通过 XmlPullParserFactory.newInstance(); 来创建一个XmlPullParser对象。
2. 调用XmlPullParser对象的setInput方法来传给它一个xml 文件流。
3. 将XmlPullParser对象传给LayoutInflater.inflate  最终生成一个View。

查文档想出来的方法,但是我完全没有试过,楼主可以试试看可不可行。具体文档楼主可以参考
http://developer.android.com/reference/android/view/LayoutInflater.html
http://developer.android.com/reference/org/xmlpull/v1/XmlPullParser.html


这个是可以的。
------解决思路----------------------
上面的方法不行那就试试这个吧
https://github.com/Avocarrot/json2view
  相关解决方案