ユーザーが後で表示できるようにWebページをダウンロードしようとしています。これまでに、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 []は、2つの文字列を含む配列です。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を示す小さな黒いボックスがまだあります。テキストビューでもそのように画像を表示できると思っていましたが、何か間違っているか、別の方法があります。