javascript – Android WebView canGoBack总是如此

前端之家收集整理的这篇文章主要介绍了javascript – Android WebView canGoBack总是如此前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
我有一个加载社交媒体页面的WebView.我重写了Back按钮,在WebView上调用goBack方法,直到canGoBack()返回false.然后它调用super.onBackPressed().问题是Twitter和YouTube使用 Javascript的方式是canGoBack()返回true,除非你很快点击后退按钮4次.

我已尝试使用当前网址检查原始网址,但该网页的网址与传入的网址不同.

有没有人知道如何让后退按钮调用WebView的goBack方法,直到你开始,然后调用super.onBackPressed?

解决方法

嗯,这不是理想的,但你可以通过使用数组(或只是一个增加和减少的整数)手动跟踪导航历史记录,并在每次更改时将当前网址推入其中,并在按下时弹出最后一个网址返回按钮,如果数组为空(或整数为0),则调用super.onBackPressed().
要在url更改时执行代码,可以覆盖方法boolean shouldOverrideUrlLoading(WebView视图,WebResourceRequest请求)
WebViewClient( link to the documentation). 这样网页的javascript就不会干扰你如何处理后退按钮.

猜你在找的JavaScript相关文章