有时候我们需要做一些非常奇怪的功能,比如说h5页面点击某个按钮时,需要我们在手机端展示一些页面,或者渲染h5返回的数据。
web view中shouldOverrideUrlLoading便是截获h5中点击事件的方法
其中url是h5中携带回来的数据,使用Url对象解析,根据参数名获取
参数信息
mWebView = (WebView) findViewById(R.id.webview);
//支持javascript
mWebView.getSettings().setJavaScriptEnabled(true);
// 设置可以支持缩放
mWebView.getSettings().setSupportZoom(true);
// 设置出现缩放工具
mWebView.getSettings().setBuiltInZoomControls(true);
//扩大比例的缩放
mWebView.getSettings().setUseWideViewPort(true);
//控制WebView 自适应屏幕
mWebView.getSettings().setUseWideViewPort(true);
mWebView.getSettings().setLoadWithOverviewMode(true);
String urlString = AppConfig.URL_SCORECASH;
mWebView.getSettings().setJavaScriptCanOpenWindowsAutomatically(true);
mWebView.setWebViewClient(new WebViewClient() {
@Override
public boolean shouldOverrideUrlLoading(WebView view, String url) {
Uri uri = Uri.parse(url);
uri.getQueryParameter("price"); //获取数据
}
}
return true;
}
@Override
public void onPageStarted(WebView view, String url, Bitmap favicon) {
super.onPageStarted(view, url, favicon);
}
@Override
public void onPageFinished(WebView view, String url) {
}
});