2012-04-18 90 views
8

我有一个HTML文件在我/res/raw/test.html如何把图像从绘制文件夹在HTML文件

,我用它显示在Web视图下面的代码

WebView wbview = (WebView)findViewById(R.id.webView1); 
InputStream fin; 
    try 
    { 
     fin = getResources().openRawResource(R.raw.manual); 
     byte[] buffer = new byte[fin.available()]; 
     fin.read(buffer); 
     fin.close(); 
     wbview.loadData(new String(buffer), "text/html", "UTF-8"); 
    } 
    catch (IOException e) 
    { 
     e.printStackTrace(); 
    } 

而且这是我的我的HTML代码的文件

<html> 
    <p> 
    Lorem ipsum dolor sit amet, 
    </p> 
    <table> 
    <tr> 
     <td> 
     <img src=\\"file:///android_asset/test_image2.jpg\"/>  
      <img src="test_image2.jpg" width="50px" alt="Hi"> 

     <img src=\"res/drawable/test_image.png"/> 
     <img src="file:///android_res/drawable/test_image.png" /> 
     <img src=\"file:///android_res/drawable/test_image.png"\ /> 
     </td> 
    </tr> 
</table> 
</html> 

我想在我的HTML文件,显示从我的资源文件夹中的图片 我尝试了所有的可能性依然无法正常工作。它只是显示一个HTML文本,但对于像我没有想法如何表达

请帮我

+0

您可以通过 乔纳斯阿尔维斯 http://stackoverflow.com/questions/4534043/android-add-image-to-webview-from-a-drawable – Krutik 2012-04-18 08:35:48

回答

16

从Android的资产文件夹如下面的代码可以载入你的HTML页面。

WebView webView = new WebView(this); 
webView.loadUrl("file:///android_asset/manual.html"); 
setContentView(webView); 

而且你也需要让你的html如下所示。

<html> 
    <p> 
    Lorem ipsum dolor sit amet, 
    </p> 
<table> 
    <tr> 
     <td> 
    <img src="file:///android_asset/test_image2.jpg"/>  
     <img src="file:///android_asset/test_image2.jpg" width="50px" alt="Hi"> 
    <img src="file:///android_res/drawable/test_image.png"/> 
    <img src="file:///android_res/drawable/test_image.png" /> 
    <img src="file:///android_res/drawable/test_image.png" /> 
     </td> 
     </tr> 
    </table> 
    </html> 
+4

+1精确解签这个答案。建议:将图片放置在资源文件夹中,不需要写入file:/// android_asset路径,只需使用RelativePath引用即可。 (点) – 2012-04-18 08:44:40

+0

谢谢你,我不知道的好建议。 – Herry 2012-04-18 08:46:15

+0

是的,它的工作非常好.. 其实我需要我的HTML文件仍然在res文件夹中,所以本地化将工作我修改你的解决方案 ... wbview.loadUrl(“file:/// android_res/raw/manual html的“); ... 并把RES /生/ manual.html和RES /生-JP/manual.html等前 也许我的问题在这个代码 wbview.loadData(新的字符串(缓冲),“ text/html“,”UTF-8“); 此线HTML只是显示文本仅 感谢的答案 – 2012-04-18 09:19:15

相关问题