Android Webview重定向问题解决方法

 更新时间:2018年05月04日 08:34:23   作者:鲁大先生  
在Android开发过程中,使用过WebView的童鞋可能难免会遇到URL重定向问题。这篇文章主要介绍了Android Webview重定向问题解决方法,非常具有实用价值,需要的朋友可以参考下

项目中需要webview重定向,但是由于一个webveiw里面有许多加载操作,因此在调用webview。goback()方法时,往往达不到我们需要的操作效果。

1.解决方法

WebBackForwardList webBackForwardList=webview.copyBackForwardList()获取webview加载栈,然后更具加载栈做逻辑操作

2.webBackForwardList常用的方法

int size = webBackForwardList.getSize()
webBackForwardList.getCurrentItem()
webBackForwardList.getCurrentIndex()
webBackForwardList.getItemAtIndex(index)

getsize()方法获取当前加载栈的长度;

getCurrentItem()获取当前webview所加载的界面,我们可以在这个方法下获得url,title等内容;

getCurrentIndex()获取当前加载在加载栈中的位置;

webBackForwardList.getItemAtIndex(index)获取加载栈中第index页面;

3.合理使用

在2中我们获取到加载页面的一些信息,然后可以根据当前url,标题,位置。来进行相应的处理。

4.Demo使用

现在我们有这样一个场景:打开一个activity,webview加载A界面,然后用户在A里面点击B,然后点击C,点击D。返回操作时我们需要从D跳到B,然后跳A.下面为代码:

public boolean onKeyDown(int keyCode, KeyEvent event) {
    if (webView.canGoBack()) {
      WebBackForwardList webBackForwardList = webView.copyBackForwardList();
      if (webBackForwardList.getCurrentIndex() == 4) {//当前处于D界面
        webView.loadUrl(webBackForwardList.getItemAtIndex(1).getUrl());//挑转到B界面
        return true;
      }
      webView.goBack();
    }    
    return true;
  }

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持脚本之家。

相关文章

  • Android App中使用Gallery制作幻灯片播放效果

    Android App中使用Gallery制作幻灯片播放效果

    这篇文章主要介绍了Android App中使用Gallery制作幻灯片播放效果,相册应用中的轮播功能也与本文中例子的原理类似,需要的朋友可以参考下
    2016-04-04
  • Android 判断屏幕开关状态方式总结

    Android 判断屏幕开关状态方式总结

    这篇文章主要介绍了Android 判断屏幕开关状态方式总结的相关资料,需要的朋友可以参考下
    2016-10-10
  • Android开发之判断有无虚拟按键(导航栏)的实例

    Android开发之判断有无虚拟按键(导航栏)的实例

    下面小编就为大家分享一篇Android开发之判断有无虚拟按键(导航栏)的实例,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2018-01-01
  • Android自定义View仿腾讯TIM下拉刷新View

    Android自定义View仿腾讯TIM下拉刷新View

    这篇文章主要给大家介绍了关于Android自定义View仿腾讯TIM下拉刷新View的相关资料,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2019-01-01
  • Android开发Input系统触摸事件分发

    Android开发Input系统触摸事件分发

    这篇文章主要为大家介绍了Android开发Input系统触摸事件分发示例解析,有需要的朋友可以借鉴参考下,希望能够有所帮助,祝大家多多进步,早日升职加薪
    2023-03-03
  • Android实现流光和光影移动效果代码

    Android实现流光和光影移动效果代码

    大家好,本篇文章主要讲的是Android实现流光和光影移动效果代码,感兴趣的同学赶快来看一看吧,对你有帮助的话记得收藏一下,方便下次浏览
    2021-12-12
  • android原生实现多线程断点续传功能

    android原生实现多线程断点续传功能

    这篇文章主要为大家详细介绍了android原生实现多线程断点续传功能,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2022-07-07
  • Android编程之绘图canvas基本用法示例

    Android编程之绘图canvas基本用法示例

    这篇文章主要介绍了Android编程之绘图canvas基本用法,结合实例形式分析了Android canvas绘图的相关方法与使用技巧,需要的朋友可以参考下
    2017-09-09
  • Android实现为图片添加水印

    Android实现为图片添加水印

    这篇文章主要为大家详细介绍了Android实现为图片添加水印的相关资料,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2017-02-02
  • Android自定义View实现五子棋游戏

    Android自定义View实现五子棋游戏

    这篇文章主要为大家详细介绍了Android自定义View实现五子棋游戏,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2019-11-11

最新评论