WebViewClient.shouldOverrideUrlLoading()这个方法的返回值到底意味着什么呢?
最新澳门博彩导航
最新澳门博彩导航
当前位置 : 最新澳门博彩导航 > 澳门赌场开户

WebViewClient.shouldOverrideUrlLoading()这个方法的返回值到底意味着什么呢?

 mWebView.setWebViewClientnew WebViewClient {
            @Override
            public boolean shouldOverrideUrlLoadingWebView view, String url {
                view.loadUrlurl;
                return true;
            }
}

不是太明白shouldOverrideUrlLoading这个方法的返回值含义是什么。

shouldOverrideUrlLoading返回true表示你已经处理此次请求。返回false表示有webview自行处理,一般都是把此url加载出来。
比如有一个下面的需求:有一个web页面上一个链接,点击后我们不希望webview直接转到链接的页面,而是起一个我们自己写的activity,此时就需要让shouldOverrideUrlLoading返回true,如下:

private WebViewClient webViewClient = new WebViewClient {
        @Override
        public boolean shouldOverrideUrlLoadingWebView view, String url {
            if matchurl {
                foo1;
                return  true;
            }
            return false;
        }
    };
    

另外post请求并不会回调这个函数,楼主可比较下shouldInterceptRequest

1、 默认返回:return super.shouldOverrideUrlLoadingview, url; 这个返回的方法会调用父类方法,也就是跳转至手机浏览器,平时写webview一般都在方法里面写 webView.loadUrlurl; 然后把这个返回值改成下面的false。
2、返回: return true; webview处理url是根据程序来执行的。
3、返回: return false; webview处理url是在webview内部执行。
参考:http://watt201211.blog.163.com/blog/stat...

栏目列表

广告位

最新澳门博彩导航