如何获取子xml值?
我的意思是:如果xml.getName() = Section
给我的Sub值。我想我必须在其中使用while循环,但我无法实现它!
OR是否可以获得父值?
<Top name="Top category">
<Section name="Sub category 1">
<Sub note="text" />
<Sub note="text" />
</Section>
<Section name="Sub category 2">
<Sub note="text" />
<Sub note="text" />
</Section>
</Top>
...
while (eventType != XmlPullParser.END_DOCUMENT) {
if ((eventType == XmlPullParser.START_TAG) &&(_xml.getName().equals("Section"))){
String _Section = _xml.getAttributeValue(null, "name");
// take its Sub note values
}
}
}
答案 0 :(得分:1)
在处理拉解析器时,您必须创建一个对象,以便在遇到该对象的子元素时可以访问它。例如,在这种情况下,无论何时遇到Section的START_TAG,都要创建一个Section对象并将其保存在方法范围之外的变量中。然后,如果您发现另一个START_TAG Sub 和,则该部分不为空,则表示您已在某个部分中,并且您需要添加子部分。找到Section的END_TAG后,将当前的Section对象添加到列表中,然后将该变量设置为null
。
答案 1 :(得分:0)
我建议使用像AQuery这样的好的反序列化库 - https://code.google.com/p/android-query/
我无法与该项目相关联,但似乎它可以更有效,更强大地解决您手头的任务