我已经实现了一个移动网页,其中一些图片引用了android资产中的一些图片。
<img src="file:///android_asset/assets/pictures/1.jpg" border="0" />
(1.jpg在android目录/ assets / pictures /下)
此页面放在我的服务器中。
在活动中,此网页将加载到webview中。但为什么webview无法显示该图片呢?
webview.loadUrl("http://abc.com/page.html");
=======编辑======
这是设置
final MyActivity activity = this;
webview.setWebChromeClient(new WebChromeClient() {
@Override
public void onProgressChanged(WebView view, int progress) {
activity.setProgress(progress * 1000);
}
});
webview.setWebViewClient(new WebViewClient() {
@Override
public void onReceivedError(WebView view, int errorCode,
String description, String failingUrl) {
}
@Override
public boolean shouldOverrideUrlLoading(WebView view, String url) {
view.loadUrl(url);
return true;
}
});
webview.loadUrl("http://abc.com/page.html");
Android SDK:
<uses-sdk
android:minSdkVersion="8"
android:targetSdkVersion="17" />
答案 0 :(得分:0)
您可以在页面内容中使用base64嵌入式图像(无需为限制文件系统的链接而烦恼)
<img src="data:image/jpg;base64,xxxxxxxxx"/>
答案 1 :(得分:0)
由loadUrl()方法加载的页面不加载与file:/// android_asset / ...链接的图像,但您可以使用org.apache.http.client.methods.HttpGet.HttpGet()获取HTML页面,然后使用loadDataWithBaseURL()将其传递给WebView - 这样WebView将加载与file:/// android_asset / ...链接的资源。