• linkedu视频
  • 平面设计
  • 电脑入门
  • 操作系统
  • 办公应用
  • 电脑硬件
  • 动画设计
  • 3D设计
  • 网页设计
  • CAD设计
  • 影音处理
  • 数据库
  • 程序设计
  • 认证考试
  • 信息管理
  • 信息安全
菜单
linkedu.com
  • 网页制作
  • 数据库
  • 程序设计
  • 操作系统
  • CMS教程
  • 游戏攻略
  • 脚本语言
  • 平面设计
  • 软件教程
  • 网络安全
  • 电脑知识
  • 服务器
  • 视频教程
  • JavaScript
  • ASP.NET
  • PHP
  • 正则表达式
  • AJAX
  • JSP
  • ASP
  • Flex
  • XML
  • 编程技巧
  • Android
  • swift
  • C#教程
  • vb
  • vb.net
  • C语言
  • Java
  • Delphi
  • 易语言
  • vc/mfc
  • 嵌入式开发
  • 游戏开发
  • ios
  • 编程问答
  • 汇编语言
  • 微信小程序
  • 数据结构
  • OpenGL
  • 架构设计
  • qt
  • 微信公众号
您的位置:首页 > 程序设计 >Android > 解决webview调用 goBack() 返回上一页自动刷新闪白的情况,webviewgoback

解决webview调用 goBack() 返回上一页自动刷新闪白的情况,webviewgoback

作者:网友 字体:[增加 减小] 来源:互联网 时间:2017-05-26

网友通过本文主要向大家介绍了解决webview调用 goBack() 返回上一页自动刷新闪白的情况,webviewgoback等相关知识,希望对您有所帮助,也希望大家支持linkedu.com www.linkedu.com

解决webview调用 goBack() 返回上一页自动刷新闪白的情况,webviewgoback


问题是:重写了onKeyDown()方法使其goBack(),但是遇到的问题是,每次进入webview再次返回原始页面的时候,中间会有一个闪白的出现。

试了好多网上的方法,发现都是扯淡。委屈

后来意识到,webView 有缓存存在着缓存模式,怎么用不同的缓存模式呢?

//设置缓存模式
webView.getSettings().setCacheMode(WebSettings.LOAD_DEFAULT);
需要把模式改成LOAD_NO_CACHE!! 但是每次都得重新请求很费资源,于是可以放在onKeyDown()里重新写一个LOAD_NO_CACHE,只在返回时调用无缓存模式
这样就可以在返回前一个页面的时候不刷新出现闪白了 代码:
private void initView() {  
    webview = (WebView) findViewById(R.id.faq_wv);  
    webview.loadUrl(url);  
    webview.setWebViewClient(new WebViewClient() {  
        @Override  
        public boolean shouldOverrideUrlLoading(WebView view, String url) {  
            view.loadUrl(url);  
            return true;  
        }  
    });  
    WebSettings settings = webview.getSettings();  
    settings.setJavaScriptEnabled(true);  
    settings.setCacheMode(WebSettings.LOAD_CACHE_ELSE_NETWORK);  
}  
  
/* 改写物理按键返回的逻辑 */  
  
@Override  
public boolean onKeyDown(int keyCode, KeyEvent event) {  
    if (keyCode == KeyEvent.KEYCODE_BACK && webview.canGoBack()) {  
        // 返回上一页面  
         webview.getSettings().setCacheMode(WebSettings.LOAD_NO_CACHE);  
        webview.goBack();  
        return true;  
    }  
    return super.onKeyDown(keyCode, event);  
}  

  

分享到:QQ空间新浪微博腾讯微博微信百度贴吧QQ好友复制网址打印

您可能想查找下面的文章:

  • 解决webview调用 goBack() 返回上一页自动刷新闪白的情况,webviewgoback

相关文章

  • 2017-05-26Android View分区域点击实现方案——1.根据坐标范围
  • 2017-05-26Android Studio第一次提交git使用,androidgit
  • 2017-05-26redis lru实现策略
  • 2017-05-26Android 手机卫士--设置界面&功能列表界面跳转逻辑处理,android卫士--界面
  • 2017-05-26Android开发通用的工具类
  • 2017-05-26Android中Fragment与Activity之间的交互(两种实现方式),androidfragment
  • 2017-05-26redis配置文件参数解释说明
  • 2017-05-26点击文本改变改行背景色,弹出对话框,改行背景
  • 2017-05-26硅谷商城6--购物车编辑实现,硅谷商城6--购物车
  • 2017-05-26android中生成excel

文章分类

  • JavaScript
  • ASP.NET
  • PHP
  • 正则表达式
  • AJAX
  • JSP
  • ASP
  • Flex
  • XML
  • 编程技巧
  • Android
  • swift
  • C#教程
  • vb
  • vb.net
  • C语言
  • Java
  • Delphi
  • 易语言
  • vc/mfc
  • 嵌入式开发
  • 游戏开发
  • ios
  • 编程问答
  • 汇编语言
  • 微信小程序
  • 数据结构
  • OpenGL
  • 架构设计
  • qt
  • 微信公众号

最近更新的内容

    • 硅谷社交7--添加联系人--接收添加好友邀请,硅谷7--
    • Android 手机卫士--设置界面&功能列表界面跳转逻辑处理,android卫士--界面
    • android Fragment详细讲述,包括问题隐患
    • json反序列化把空字符串转为null
    • android设计的布局在阿拉伯语下界面错乱的解决方法,android阿拉伯语
    • 初识android中的动画,初识android动画
    • 插入排序算法详解,排序算法详解
    • OpenDigg安卓开源项目月报201704,opendigg安卓201704
    • MySQL rpl_semi_sync_master_timeout相关的一件BUG
    • andriod CheckBox,andriodcheckbox

关于我们 - 联系我们 - 免责声明 - 网站地图

©2020-2025 All Rights Reserved. linkedu.com 版权所有