处理完文件后,我得到了一个HTML字符串,其中图片被设置为
图片路径不应该被修改,因为我必须从列表中选择文件项。该图片与文件处于同一目录中。我使用loadData/loadDataWithBaseURL加载HTML字符串,但是图片没有显示出来,只看到它的框架。
我该如何解决这个问题?如果我有许多以.001.jpg,.002.png等索引的图像(都在同一个目录中),我能够应用这个解决方案吗?
更新:谢谢,使用loadUrl()语句无论如何命名图片都可以工作。事实上,在加载到WebView之前,我必须读取和处理内容。这就是为什么我使用loadDataWithBaseUrl()语句遇到了麻烦。以下是我的测试项目中读取和显示Test.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文件中,然后加载它,那个文件以后会被删除。但是,我仍在寻找更好的解决方案 :)
wv
的? - ekkis