2014-10-29 25 views
0

你好我想加载一个WiebView的HTML数据。我的html数据包含两个图像,一个位于资产文件夹中,另一个位于网络上。我的代码是这样的:Webview从文件中加载图像,但不是从网络中android

String html = "<html><body><img src="image1.jpg"><img src="http://www.example.com/images/image2.jpg"></body></html>"; 

webView = (WebView) rootView.findViewById(R.id.webView1); 
webView.getSettings().setJavaScriptEnabled(true); 
webView.getSettings().setUseWideViewPort(true); 

webView.loadDataWithBaseURL("file:///android_asset/", html, "text/html", "UTF-8",null); 

但web视图只加载第一个图像并不会加载网页图像。任何人都可以帮我解决这个问题吗?

+0

'的http:// www.example.com /图像/ image2.jpg'不是JPG而是HTML。 – greenapps 2014-10-29 12:33:59

+0

@greenapps我只是以这个虚拟网址为例。 – 2014-10-31 07:00:55

+0

不要这样做。你不能用它作为例子,因为它是一个现有的URL,因为我告诉你的原因,它在你的代码中不起作用。这样很混乱。 – greenapps 2014-10-31 08:48:07

回答

0

你的代码是可以的(除非是未转义的引号),但你可能忘记了为webview请求互联网许可。将其添加到清单文件中:

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

我已在我的清单文件中拥有此权限,并且我的应用程序的其他部分可以连接到互联网而没有任何问题。 – 2014-11-01 06:19:08

0

首先在清单中添加Internet权限。 第二写:

webView.loadDataWithBaseURL("http:///android_asset/", html, "text/html", "UTF-8",null); 

不:

webView.loadDataWithBaseURL("file:///android_asset/", html, "text/html", "UTF-8",null); 

因为HTTP显示网页和文件显示内部存储器