如何在Android中的webView中加载img标签?

时间:2013-01-09 10:22:41

标签: android html webview android-webview android-websettings

我想在Android网页视图中加载以下HTML代码。

<!DOCTYPE html>
<html>
<body style = "text-align:center">

<img src="http://XXXXXXXX.com/books_snaps/UR335/1.jpg" alt="pageNo" 

height="100%" width="100%"> 

</body>
</html>

其中http://XXXXXXXX.com/books_snaps/UR335/1.jpg是图片链接。我想在上面HTML的<img>标记中加载此图片。如何在Android的webview中嵌入HTML代码?

4 个答案:

答案 0 :(得分:7)

String htmlString = "<!DOCTYPE html><html><body style = \"text-align:center\"><img src=\"http://shiaislamicbooks.com/books_snaps/UR335/1.jpg\" alt=\"pageNo\" height=\"100%\" width=\"100%\"></body></html>";
webview.loadDataWithBaseURL(null,htmlString,"text/html","UTF-8","about:blank");

此外,您还需要添加互联网权限

<uses-permission android:name="android.permission.INTERNET" /> 

答案 1 :(得分:1)

您可以先将资产文件夹中的html文件保存为

assets\html\index.html

然后只需将页面加载到webview

   webView.loadUrl("file:///android_asset/html/index.html");

或者你可以试试这个

String content = 
       "<?xml version=\"1.0\" encoding=\"UTF-8\" ?>"+
       "<html><head>"+
       "<meta http-equiv=\"content-type\" content=\"text/html; charset=utf-8\" />"+
       "<head><body>";

content += myContent + "</body></html>";

WebView WebView1 = (WebView) findViewById(R.id.webView1);
WebView1.loadData(content, "text/html; charset=utf-8", "UTF-8");

答案 2 :(得分:1)

按照Sanket Kachhela的回答,如果您在Android 9.0设备上运行应用程序,但仍然看不到图像,请考虑向清单文件中的Application标签添加android:usesCleartextTraffic="true"

 <application
    android:allowBackup="true"
    android:icon="@mipmap/ic_launcher"
    android:label="@string/app_name"
    android:roundIcon="@mipmap/ic_launcher_round"
    android:supportsRtl="true"
    android:theme="@style/AppTheme"
    android:usesCleartextTraffic="true">
    ...

对我来说,它确实起作用。

See this thread

答案 3 :(得分:0)

您可以从链接下载该图像,然后您需要在Android应用程序assests文件夹中创建一个名为“Images”的文件夹。

然后,您可以将图片链接的路径更改为html文件中的../images/1.jpg

试试这种方式。我相信它会奏效。

感谢。