time to countdown_反应物消耗速率

time to countdown_反应物消耗速率前段时间使用CountDownTimer做了一个团购活动的倒计时功能,前期使用的时候没法先什么问题(测试不到位),最近同事发现了一个问题,页面频繁刷新的时候出现秒数显示速率变快的bug。现象:页面频繁刷新的时候出现秒数显示速率变快。原因初步分析:刷新时创建了多个CountDownTimer实例,并且多个实例同时在运行。验证:检查代码发现newCountDownTimer()创…

大家好,又见面了,我是你们的朋友全栈君。如果您正在找激活码,请点击查看最新教程,关注关注公众号 “全栈程序员社区” 获取激活教程,可能之前旧版本教程已经失效.最新Idea2022.1教程亲测有效,一键激活。

Jetbrains全系列IDE使用 1年只要46元 售后保障 童叟无欺

    前段时间使用CountDownTimer做了一个团购活动的倒计时功能,前期使用的时候没法先什么问题(测试不到位),最近同事发现了一个问题,页面频繁刷新的时候出现秒数显示速率变快的bug。

现象:页面频繁刷新的时候出现秒数显示速率变快。

原因初步分析:刷新时创建了多个CountDownTimer实例,并且多个实例同时在运行。

验证:检查代码发现new CountDownTimer()创建实例是在一个下拉刷新的方法中进行的,每次刷新都会调用这个方法创建一个定时器实例,并且在创建实例之前并没有预先判断实例是否已经创建。

解决:在创建实例之前先判断一下实例是否已经创建,如果已经创建,取消原有实例,并且将原来的CountDownTimer置空。

if(countDownTimer!=null){
    countDownTimer.cancel();
    countDownTimer=null;
}
countDownTimer=new CountDownTimer(diff,1000) {
                            @Override
                            public void onTick(long l) {
                                mholder.tv_countdown_seconds.setText(StringUtil.valueOf(--sec));
                                if(sec<0){
                                    sec=59;
                                    mholder.tv_countdown_seconds.setText(StringUtil.valueOf(sec));
                                    mholder.tv_countdown_min.setText(StringUtil.valueOf(--mins));
                                }

 

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/193637.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • 零散的MySQL基础总是记不住?看这一篇就够了!

    点击上方“全栈程序员社区”,星标公众号 重磅干货,第一时间送达 作者:Sicimike blog.csdn.net/Baisitao_/article/details/104714…

    2021年6月25日
    73
  • 【第一篇】Vue的初次邂逅

    【第一篇】Vue的初次邂逅  因为最近需要使用到Vue,所以打算将Vue的学习资料详细整理一份,感兴趣的小伙伴可以一起来哦。一、Vue基础介绍1.什么是Vue.jsVue.js是目前最火的一个前端框架,React是最流行的一个前端框架(React除了开发网站,还可以开发手机App,Vue语法也是可以用于进行手机App开发的,需要借助于Weex)Vue.js是前端的主流框架之一,和Angular.js、Rea…

    2022年6月4日
    23
  • 评日报文章:关于华为裁员

    评日报文章:关于华为裁员今天看了一篇日报:CSDN日报20170304——《令人比较失落的IT圈子-关于华为裁员》看了前半部分,就没有往下看了。讲的有所道理,但是总觉得文字中似乎有种怨念,不够通透,明亮。就说一个我比较关心的观点吧:IT门槛低,不如物理,化学,生物制药这类学科。部分承认,但是综合考虑社会发展状况,这是很容易看明白的一个现象,文章前半部分都已经说了,和国家大力扩招,培养发展计算机产业是有很大关系的。社会发展到

    2022年7月18日
    28
  • 使用fiddler+模拟器进行APP抓包「建议收藏」

    使用fiddler+模拟器进行APP抓包「建议收藏」1.下载最新版fiddler,强烈建议在官网下载:https://www.telerik.com/download/fiddler2.正常傻瓜式安装,下一步,下一步,安装完毕后,先不用急于打开软件。3.下载并安装Fiddler证书生成器:http://www.telerik.com/docs/default-source/fiddler/addons/fiddlercertmaker….

    2022年5月30日
    41
  • python项目实战:自制百度百科搜索引擎GUI界面

    python项目实战:自制百度百科搜索引擎GUI界面

    2021年7月5日
    79
  • voliate关键字的应用误区

    voliate关键字的应用误区写下这篇博客也是因为本人之前对voliate关键字理解不透彻,才有了应用误区,希望同样没有理解到位的朋友可以一起踩坑,也欢迎上帝视角明明白白的大佬指出本文的不当之处。先说一下自己之前对voliate的理解,voliate通过内存屏障可以禁止指令重排序和保证可见性,但是不能保证并发安全。禁止指令重排序就不说了,主要说一说如何保证可见性以及为什么不能保证并发安全。首先理解一下一个线程如何去修改…

    2022年5月20日
    50

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号