Android中web view截取H5的点击事件

有时候我们需要做一些非常奇怪的功能,比如说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) {

            }
        });

你可能感兴趣的:(Android技术博客)