好吧,我对这个失去了理智.我的程序中有一个解析HTML的方法.我想要包含内嵌图像,我的印象是使用Html.fromHtml(字符串,Html.ImageGetter,Html.TagHandler)将允许这种情况发生.
由于Html.ImageGetter没有实现,所以由我来编写一个.但是,由于将URL解析为Drawables需要网络访问,我不能在主线程上执行此操作,因此它必须是AsyncTask.我认为.
但是,当您将ImageGetter作为参数传递给Html.fromHtml时,它使用必须重写的getDrawable方法.因此无法调用触发doInBackground方法的整个ImageGetter.execute事务,因此无法实际实现此异步.
我是否完全错了,或者更糟糕的是,这是不可能的?谢谢
我的Android应用程序接收带有图像的HTML内容.是否可以使fromHTML()函数在它收到的HTML字符串中显示图像?
如果没有,我如何检索HTML字符串中的图像并将其转换为TextView图像?
谢谢
我正在实现一个与Webview相关的android应用程序.我从服务器获取base64数据字符串,数据格式可能是jpg或pdf文件或doc文件等.
我想使用以下方法在webview中加载该base64数据字符串:
webview.loadData(urlString, "text/html; charset=utf-8", null);
样品:
String urlString = getIntent().getStringExtra("base64String");
String mimeType = getIntent().getStringExtra("MimeType");
WebSettings settings = webView.getSettings();
settings.setDefaultTextEncodingName("utf-8");
if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.FROYO) {
String base64 = Base64.encodeToString(urlString.getBytes(), Base64.DEFAULT);
webView.loadData(urlString, "text/html; charset=utf-8", "base64");
} else {
String header = "<?xml version=\"1.0\" encoding=\"UTF-8\" ?>";
webView.loadData(header + urlString, "text/html; chartset=UTF-8", null);
}
Run Code Online (Sandbox Code Playgroud)