android – 如何将存储在字节数组中的图像加载到WebView?

前端之家收集整理的这篇文章主要介绍了android – 如何将存储在字节数组中的图像加载到WebView?前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
大家!我已将大量图片压缩为“pictures.zip”文件.我想将这些图片之一加载到WebView,如下所示:
WebView wv = (WebView)findViewById(R.id.WebView01);
wv.loadDataWithBaseURL(null,"<img src=\"abc.jpg\">","text/html","UTF-8",null);

这里,“abc.jpg”是一张已压缩为pictures.zip文件图片.

>我只想解压缩zip文件中的图片获取
图片的字节流,然后
将图像加载到WebView
字节流.
>我不想解压缩
然后是来自zip文件图片
将其保存到SD卡然后加载它.
>而且,我不想编码
pitcture的字节到base64然后
将图像加载到WebView
或者,因为这两种方式都会
非常慢

解决方法

据我所知,没有办法满足所有这三个要求.如果您不想将其写入存储,Base64对其进行编码并将其直接加载到图像标签中可能是您​​最好的选择,尽管您仍然可以将其写入内部存储并在webview中显示.
private static final String HTML_FORMAT = "<img src=\"data:image/jpeg;base64,%1$s\" />";

private static void openJpeg(WebView web,byte[] image)
{
    String b64Image = Base64.encode(image,Base64.DEFAULT);
    String html = String.format(HTML_FORMAT,b64Image);
    web.loadData(html,"utf-8");
}

猜你在找的Android相关文章