Android的WebViewClient onReceivedError不叫404错误 [英] Android WebViewClient onReceivedError is not called for a 404 error
问题描述
喜
结果
在列表视图中我有这应该从服务器的时候,有没有像present我需要一个虚拟的形象。我试图加载一个图像文件的网页流量
hi
In a list view i have an webview which should load a image file from the server,when there is no image present i need a dummy image .I tried
holder.image.setWebViewClient(new WebViewClient()
{
@Override
public void onReceivedError( WebView view, int errorCode, String description, String failingUrl)
{
System.out.println("description error" + description);
view.setVisibility( View.GONE );
}
@Override
public void onPageFinished(WebView view, String url) {
view.setVisibility( View.VISIBLE );
}
});
我有这个网页视图在一个的FrameLayout的虚拟形象,onPageFinished侦听每个图像的URL加载后调用,但onReceivedError不叫为其生产404 error.Any猜测如何做到这一点的URL。
I have this webview with an dummy image in a FrameLayout, onPageFinished listener is called after every image url is loaded, but onReceivedError is not called for a url which produce a 404 error.Any guess how to do it.
推荐答案
今天我有同样的问题,
问题:onPageFinished总是被调用。如果有错误,将onErrorReceived之后被调用。
The problem: onPageFinished is called always. If there is an error it will be called after onErrorReceived.
这是我已经找到了解决办法:
This is the solution I've found:
holder.image.setWebViewClient(new WebViewClient() {
private boolean error;
@Override
public void onPageStarted(WebView view, String url, Bitmap favicon) {
super.onPageStarted(view, url, favicon);
error = false;
}
@Override
public void onReceivedError( WebView view, int errorCode, String description, String failingUrl) {
error = true;
System.out.println("description error" + description);
view.setVisibility( View.GONE );
}
@Override
public void onPageFinished(WebView view, String url) {
if (!error) {
view.setVisibility( View.VISIBLE );
}
error = false;
}
});
这篇关于Android的WebViewClient onReceivedError不叫404错误的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!