WebView后退截取url地址进行操作的方式

来源:互联网 发布:手机没有移动网络信号 编辑:程序博客网 时间:2024/05/22 16:03

webview在打开一个新页面时执行的是 shouldOverrideUrlLoading()方法,这个时候这个新页面就会加入到

WebBackForwardList这么一个集合中,如果我们要针对返回后的页面,做一些修改,那么我们就可以从集合中
将即将要返回的那个页面的url取出来,判断后进行操作,如下:

webView.setOnKeyListener(new View.OnKeyListener() {            @Override            public boolean onKey(View v, int keyCode, KeyEvent event) {                if (keyCode == KeyEvent.KEYCODE_BACK && webView.canGoBack()) {                    WebBackForwardList backForwardList = webView.copyBackForwardList();                    if (backForwardList != null && backForwardList.getSize() != 0) {                    //当前页面在历史队列中的位置                        int currentIndex = backForwardList.getCurrentIndex();                        WebHistoryItem historyItem =                         backForwardList.getItemAtIndex(currentIndex - 1);                        if (historyItem != null) {                            String backPageUrl = historyItem.getUrl();                            //url拿到可以进行操作                            ...................                            webView.goBack();                        }                    }                    return true;                }                return false;            }        });

完~~

2 0
原创粉丝点击