2

android中的webview客户端有public方法

public class MyWebViewClient extends WebViewClient {

    public MyWebViewClient () {

    }

    @Override
    public void onLoadResource(WebView view, String url) {
        something_happen_here
    }
}

我将WebViewClient 设置为 myWebView

myWebView.setWebViewClient(new MyWebViewClient());

当我将 URL 加载到 myWebView 时,MyWebViewClient 类中的 onLoadResource 方法被加载了两次,我的意思是它两次进入“something_happen_here”行。

任何人都知道为什么会这样?谢谢..

4

1 回答 1

0

而不是MyWebViewClient(),首先为客户端创建此函数:

private class BasicWebViewCient extends WebViewClient {  
    @Override   
    public boolean shouldOverrideUrlLoading(WebView view, String url) {    
        view.loadUrl(url);
        return true;  
    }  
}

在你想使用的地方,BasicWebViewCient像这样实现:

MyWebView1.setWebViewClient(new BasicWebViewCient());

希望这有帮助。

于 2013-09-09T11:25:09.623 回答