作者热门文章
- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我正在尝试使用 Android 中的 Pull Parser 来获取 image2 和 image3 的值。
<item>
<title>Title Goes Here!</title>
<picture><![CDATA[http://blahblah.image.jpg]]></picture>
<picture><![CDATA[http://blahblah.image2.jpg]]></picture>
<picture><![CDATA[http://blahblah.image3.jpg]]></picture>
</item>
...
case XmlPullParser.END_TAG
if (tagname.equalsIgnoreCase("item")
_feed.addItem(_item);
} else if (tagname.equalsIgnoreCase("title")) {
_item.setTitle(theString)
} else if (tagname.equalsIgnoreCase("picture")) {
_item.setLargeImage(theString)
} else if (tagname.equalsIgnoreCase("picture")) {
_item.setLargeImage2(theString)
} else if (tagname.equalsIgnoreCase("picture")) {
_item.setLargeImage3(theString)
}
break;
...
我可以解析并加载第一张图片,但我不知道下一步是如何获取其他图片?谢谢您的帮助。
最佳答案
您的代码中存在逻辑错误:
} else if (tagname.equalsIgnoreCase("picture")) {
_item.setLargeImage(theString)
} else if (tagname.equalsIgnoreCase("picture")) {
_item.setLargeImage2(theString)
} else if (tagname.equalsIgnoreCase("picture")) {
_item.setLargeImage3(theString)
}
第二个和第三个else if
条件测试后面的代码永远不会执行,如果遇到的标签是picture
,控制流会在第一个if (tagname.equalsIgnoreCase("picture"))
.
您可以执行以下操作来实现您想要的:
List<String> imageList = new ArrayList<String>();
} else if (tagname.equalsIgnoreCase("picture")) {
imageList.add(theString);
}
// after you finish parsing the xml file, set the image URLs on your item.
_item.setLargeImage(imageList.get(0));
_item.setLargeImage2(imageList.get(1));
_item.setLargeImage3(imageList.get(2));
关于android - 如何在 Pull Parser for Android 中获取带有匹配标签的 XML 内容?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15963030/
我是一名优秀的程序员,十分优秀!