我希望在文本中显示html,但图片无法加载。当显示资产文件夹图像中的html文件中保存文本时。
String html="<html><head></head><body> <Marquee><img src="\mnt\sdcard\osVodigi\Images\apps.png"/><img src="\mnt\sdcard\osVodigi\Images\shop.png"/><img src="\mnt\sdcard\osVodigi\Images\skype.png"/><img src="\mnt\sdcard\osVodigi\Images\word.png"/></marquee>sfdfsd</body></html>";
web.loadData(html, "text/html", "utf-8");
我如何解决问题? 感谢
答案 0 :(得分:6)
您需要获取图像路径,然后在html中使用图像路径并将其加载到webview中。
请勿使用硬编码路径Environment.getExternalStorageDirectory()
。
同时检查sdcard是否已挂载
if (Environment.getExternalStorageState().equals(Environment.MEDIA_MOUNTED))
{
//dosomething
}
在webview中获取路径并加载图片
File f= new File(Environment.getExternalStorageDirectory(),"MyFolder");
String filename ="image.png"
String imagePath = "file://"+ f.getAbsolutePath() + File.separator + filename;
String html = "<html><head></head><body><Marquee><img src=\"" + imagePath + "\">My Scroll Text</Marquee></body></html>";
wv= (WebView) findViewById(R.id.wv);
wv.loadDataWithBaseURL("", html, "text/html", "utf-8", "");
在清单文件中添加权限
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE"/>
快照。图像和文本会滚动