我正在尝试下载网页供用户稍后查看。到目前为止,我已经下载了 html 和图像。我可以让 HTML 以很好的格式显示出来,但我无法让图像内联。
到目前为止我使用的代码:
这是我获取文章的方法。
MyImageGetter mig = new MyImageGetter(this, urlId);
Spanned span = Html.fromHtml(contents[1], mig, null);
contents[1] = span.toString();
titleView.setText(contents[0]);
content.setText(contents[1]);
contents[] 是一个包含两个字符串的数组。contents[0] 是一个简单的字符串,contents[1] 是一个带有 HTML 标记的字符串。
MyImageGetter:
public class MyImageGetter implements Html.ImageGetter{
String urlId = null;
Context c = null;
public MyImageGetter(ArticleViewer articleViewer, String urlId2) {
c = articleViewer;
urlId = urlId2;
}
public Drawable getDrawable(String source) {
String[] brokenUrl = source.split("/");
String imgName = brokenUrl[brokenUrl.length-1];
File image = new File("/data/data/com.theHoloDev.Reader/Offline/" + urlId + "/" + imgName);
Log.w("MyApp", image.getAbsolutePath());
Bitmap bm = BitmapFactory.decodeFile(image.getAbsolutePath());
Drawable d = new BitmapDrawable(c.getResources(), bm);
return d;
}
}
当我记录image.getAbsolutePath()
它时,它会出现一个存在于 ddms 中的文件。文本内容完美无缺,但每个图像中仍有小黑框显示 obj。我原以为 textview 仍然能够以这种方式显示图像,但要么我做错了什么,要么有另一种方法可以做到这一点。