android – 在webview.goBack()上调用“shouldOverrideUrlLoading”方法

android – 在webview.goBack()上调用“shouldOverrideUrlLoading”方法,第1张

概述我正在webview上的shouldOverrideUrlLoading方法中加载我的所有页面(主要是跟踪当前页面的URL并进行一些修改). 我的问题是后退按钮(例如:webview.goback()方法)绕过了上面的功能. 有什么方法可以显式调用goback()和shouldOverrideUrlLoading()方法. public boolean shouldOverrideUrlLoadi @H_502_1@ 我正在webvIEw上的shouldOverrIDeUrlLoading方法中加载我的所有页面(主要是跟踪当前页面的URL并进行一些修改).

我的问题是后退按钮(例如:webvIEw.goback()方法)绕过了上面的功能.

有什么方法可以显式调用goback()和shouldOverrIDeUrlLoading()方法.

public boolean shouldOverrIDeUrlLoading(WebVIEw vIEw,String url){//get current url and do some modifications to HTML}public boolean onKeyDown(int keyCode,KeyEvent event) {     if ((keyCode == KeyEvent.KEYCODE_BACK) && web1.canGoBack()) {         webvIEw.goBack();           return true;      }      return super.onKeyDown(keyCode,event);}
解决方法 查看代码似乎一旦根据特定URL Action的某些逻辑调用了shouldOverrIDeUrlLoading方法,您需要使用WebvIEw返回方法.我建议你在活动中使用以下方法:

@OverrIDepublic voID onBackpressed() {    if ((keyCode == KeyEvent.KEYCODE_BACK) && web1.canGoBack()) {        webvIEw.goBack();    } else {        super.onBackpressed();    }}

这与onKeypressed完全相同. (使用onBackpressed而不是onKeypressed但是在Activity类中编写此代码但不在自定义WebVIEwClIEnt中.

调用shouldOverrIDeUrlLoading中的onBackpressed().试试这个,应该工作.

总结

以上是内存溢出为你收集整理的android – 在webview.goBack()上调用“shouldOverrideUrlLoading”方法全部内容,希望文章能够帮你解决android – 在webview.goBack()上调用“shouldOverrideUrlLoading”方法所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

欢迎分享,转载请注明来源:内存溢出

原文地址: https://outofmemory.cn/web/1124319.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-05-30
下一篇 2022-05-30

发表评论

登录后才能评论

评论列表(0条)

保存