扫码关注官方订阅号
shouldOverrideUrlLoading返回true表示你已经处理此次请求。返回false表示有webview自行处理,一般都是把此url加载出来。比如有一个下面的需求:有一个web页面上一个链接,点击后我们不希望webview直接转到链接的页面,而是起一个我们自己写的activity,此时就需要让shouldOverrideUrlLoading返回true,如下:
private WebViewClient webViewClient = new WebViewClient() { @Override public boolean shouldOverrideUrlLoading(WebView view, String url) { if (match(url)) { foo1(); return true; } return false; } };
另外post请求并不会回调这个函数,楼主可比较下shouldInterceptRequest
1、 默认返回:return super.shouldOverrideUrlLoading(view, url); 这个返回的方法会调用父类方法,也就是跳转至手机浏览器,平时写webview一般都在方法里面写 webView.loadUrl(url); 然后把这个返回值改成下面的false。2、返回: return true; webview处理url是根据程序来执行的。3、返回: return false; webview处理url是在webview内部执行。参考:http://watt201211.blog.163.com/blog/stat...
微信扫码关注PHP中文网服务号
QQ扫码加入技术交流群
Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号
PHP学习
技术支持
返回顶部
shouldOverrideUrlLoading返回true表示你已经处理此次请求。返回false表示有webview自行处理,一般都是把此url加载出来。
比如有一个下面的需求:有一个web页面上一个链接,点击后我们不希望webview直接转到链接的页面,而是起一个我们自己写的activity,此时就需要让shouldOverrideUrlLoading返回true,如下:
另外post请求并不会回调这个函数,楼主可比较下shouldInterceptRequest
1、 默认返回:return super.shouldOverrideUrlLoading(view, url); 这个返回的方法会调用父类方法,也就是跳转至手机浏览器,平时写webview一般都在方法里面写 webView.loadUrl(url); 然后把这个返回值改成下面的false。
2、返回: return true; webview处理url是根据程序来执行的。
3、返回: return false; webview处理url是在webview内部执行。
参考:http://watt201211.blog.163.com/blog/stat...