我使用Jsoup来解析HTML页面,我想在ListView中显示文本和图像。所以我为此创建了LinkedHashMap和SimpleAdapter。除了文字显示。图像不会被显示出来。每次我收到日志消息,如:"解决Uri在坏位图uri"上失败。我试图谷歌这个问题,但仍然无法解决它。
以下是代码:
@Override
protected String doInBackground(String... arg) {
Document doc;
try {
doc = Jsoup.connect("http://thesiteiuse.com/news/").get();
title = doc.select("h2[class=et_pt_title]");
picture = doc.select("img");
listViewContent.clear();
for (Element titles : title) {
Map<String, Object> map = new LinkedHashMap<String, Object>();
map.put(ATTRIBUTE_NAME_TEXT, titles.text());
listViewContent.add(map);
}
for (Element img : picture){
Bitmap bitmap;
Map<String,Object> picMap = new LinkedHashMap<String,Object>();
String iurl;
iurl = img.absUrl("src");
Log.w("ABSurl:", iurl.toString());
URL url = new URL(iurl);
bitmap = BitmapFactory.decodeStream(url.openStream());
Log.w("BITMAP",bitmap.toString());
picMap.put(ATTRIBUTE_NAME_IMAGE, String.valueOf(bitmap));
listViewContent.add(picMap);
}
} catch (IOException e) {
e.printStackTrace();
}
return null;
}
如何解决我的问题?也许有另一种简单的方法在ListView中显示哪些应用程序从URL获取图像?
答案 0 :(得分:1)
您必须为adapter
创建自己的listview
。您应该看到有关如何创建它的教程:http://www.vogella.com/tutorials/AndroidListView/article.html