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)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • 我的博客创作之路[通俗易懂]

    我的博客创作之路[通俗易懂]我的博客创作之路。。在博客的在评论/留言中常看到有朋友在问博客的意义究竟是什么?工作这么忙那有时间写博客、有空休息一下多好……等类似信息,其实我早就想写篇这样的文章了从2008年我写博客到现在,每周都会做工作笔记,从没间断,有时我会将大家关注的话题以博文的方式在网上发布,即使现在玩微博了,我也依然如此坚持。。。在我的博客上,从分类来看主要分Linux企业应用、教学、网络管理、…

    2022年7月21日
    15
  • Python匹马行天下之python之父

    Python匹马行天下之python之父龟叔和他的python经过了漫长的旅程,终于要看到主角Python了。Python是现在非常非常流行的编程语言,在我们能看到的大部分编程语言排行榜中,Python都能在前三甲中拥有一席之地,并且发

    2022年7月5日
    24
  • html超链接样式设置「建议收藏」

    html超链接样式设置「建议收藏」type=”text/css”>A {FONT-SIZE: 16px; FONT-FAMILY: 宋体}A:link {COLOR: #0055bb; TEXT-DECORATION: none}A:visited {COLOR: #0077bb; TEXT-DECORATION: none}A:hover {COLOR: #ff0000

    2022年7月19日
    15
  • app自动化测试之weditor

    app自动化测试之weditorweditor功能还是比较强大的,可以自动生成代码,是基于uiautomator2之上1,确定手机和电脑连接wifi连接或者数据线连接2,启动weditor:在cmd中输入命令:python-mweditor3,效果:4,上边的网页打开,选择Andriod,输入设备(通过adbdevices命令得到的),大户Connect按钮。5,当操作完后,点击“…

    2025年7月13日
    4
  • ASP.NET GridView 内嵌 DropDownList 绑定数据「建议收藏」

    ASP.NET GridView 内嵌 DropDownList 绑定数据「建议收藏」aspx页面代码:’DataValueField=”Val”DataTextField=”Text”>

    2022年10月8日
    3
  • linux——awk(7):awk数组详解

    linux——awk(7):awk数组详解awk中数组的使用。我们在其他语言中经常会使用到数组,awk中也可以使用。示例如下:与其他不同的是,awk中的数组元素值可以设置为”空字符串“,当设定某一个元素为”空字符串“时,打印出的值就是为”空“(注:”空格“不为”空“)。鉴于awk中,元素的值可以为”空“,我们就不能根据元素的值是否为”空“去判断元素是否存在了。另外即使在模式中没有提前设定某个字符的存在,如果print中进行了引用,…

    2022年7月19日
    16

发表回复

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

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