处理文件后,我得到一个 HTML 字符串,其中图像设置为
<img src="abc.001.png" width="135" height="29" alt="" style="margin-left:0pt; margin-top:0pt; position:absolute; z-index:-65536" />
不应修改图像的路径,因为我必须从列表中选择文件项。图像与文件位于同一目录中。我使用 loadData/loadDataWithBaseURL 加载 HTML 字符串,但没有显示图像。我只看到它的框架。
我怎样才能解决这个问题?如果我有许多索引为 .001.jpg、.002.png 等的图像,我可以应用该解决方案吗?(都在一个目录中)?
更新:谢谢,无论我如何命名图像,它都适用于 loadUrl() 语句。事实上,在将内容加载到 WebView 之前,我必须阅读和处理内容。这就是我使用 loadDataWithBaseUrl() 语句并遇到上述问题的原因。这是我在测试项目中读取和显示Test.html内容的代码。
String res = "";
File file = new File(Environment.getExternalStorageDirectory()+"/Test.html");
try {
FileInputStream in = new FileInputStream(file);
if (in != null) {
BufferedReader buffreader = new BufferedReader(
new InputStreamReader(in));
String line;
while ((line = buffreader.readLine()) != null) {
res += line;
}
in.close();
}
} catch (Exception e) {
e.printStackTrace();
}
wv.loadDataWithBaseURL(null, res, "text/html", "utf-8", null);
//wv.loadUrl("file://"+Environment.getExternalStorageDirectory()+"/Test.html");
// 中的语句有效,但这不是我在实际项目中可以做的。我有一个解决方案:处理完内容后,我必须将其保存在一个临时 HTML 文件中,然后加载它,该文件稍后将被删除。但是,我仍然期待更好的解决方案:)