webView.loadData(
"<html>"
+ "<head>"
+ "<meta http-quiv=\"Content-Type\" content=\"text/html charset=utf-8\" />"
+ "</head>"
+ "<body>"
+ htmlBodyData
+ "</body>"
+ "</html>",
"text/html",
"utf-8");
しかし、Android3.0以降では上記の対処でも文字化けした。
いろいろ調べた結果、WebView#loadDataWithBaseURLを使用することで、とりあえず文字化けを回避できた。
webView.loadDataWithBaseURL(
null,
"<html>"
+ "<head>"
+ "<meta http-quiv=\"Content-Type\" content=\"text/html charset=utf-8\" />"
+ "</head>"
+ "<body>"
+ htmlBodyData
+ "</body>"
+ "</html>",
"text/html",
"utf-8",
null);
ソースを軽く眺めると、loadDataとloadDataWithBaseURLでは最初のデータの入れ方からして違っていたので、loadDataがメンテされてないんだろうな…。
0 件のコメント:
コメントを投稿