Android 短信sms倒计时
发布日期:2021-06-29 11:46:29
浏览次数:4
分类:技术文章
本文共 1983 字,大约阅读时间需要 6 分钟。
将sms倒计时封装在一个类中:
public class SmsTimer { private Timer timer; private int totalTime=60; //总共时长 private int currentTime; //当前倒计时 private Handler handler=new Handler(Looper.getMainLooper()); public SmsTimer(TimerInterface timerInterface){ this.timerInterface=timerInterface; } public SmsTimer(int totalTime,TimerInterface timerInterface){ this.totalTime=totalTime; this.timerInterface=timerInterface; } public void start(){ if(timer==null){ timer=new Timer(); currentTime=totalTime; timer.schedule(new TimerTask() { @Override public void run() { handler.post(runnable); } },1000,1000); } } public boolean isStart(){ return timer!=null; } public void cancel(){ if(timer!=null){ timer.cancel(); timer=null; } handler.removeCallbacksAndMessages(null); } private TimerInterface timerInterface; public interface TimerInterface{ void timerFinish(); void timerPlaying(int time); } private Runnable runnable=new Runnable() { @Override public void run() { currentTime--; //如果倒计时完成,结束timer,调用自定义接口方法 if(currentTime<=0){ if(timerInterface!=null)timerInterface.timerFinish(); cancel(); }else{ if(timerInterface!=null)timerInterface.timerPlaying(currentTime); } } };}
使用方法如下:
1.创建SmsTimer对象
SmsTimer smsTimer=new SmsTimer(new SmsTimer.TimerInterface() { @Override public void timerFinish() { //倒计时完成时的回调 } @Override public void timerPlaying(int time) { //倒计时进行时的回调 }});
2.启动计时器
if(!smsTimer.isStart()){ smsTimer.start(); //开启短信倒计时 //...做自己的事}
3.在Activity或Fragment的onDestroy中结束计时器,防止内存泄露
@Overrideprotected void onDestroy() { super.onDestroy(); smsTimer.cancel();}
转载地址:https://blog.csdn.net/zz51233273/article/details/117948592 如侵犯您的版权,请留言回复原文章的地址,我们会给您删除此文章,给您带来不便请您谅解!
发表评论
最新留言
表示我来过!
[***.240.166.169]2024年04月13日 15时33分05秒
关于作者
喝酒易醉,品茶养心,人生如梦,品茶悟道,何以解忧?唯有杜康!
-- 愿君每日到此一游!
推荐文章
抽奖 | 送STM32开发板
2019-04-29
光立方,永远的神!
2019-04-29
学习STM32很简单?
2019-04-29
电赛 | 电源题软件如何准备?
2019-04-29
手把手教你DIY一款属于自己的万能红外遥控器!
2019-04-29
速看 | 电子元器件如何确定好坏?
2019-04-29
485通信自动收发电路,历史上最详细的解释
2019-04-29
【视觉盛宴三】不好意思,这些线材接口的横截面真的没见过
2019-04-29
一位头发发白的神人教你怎么写程序,运维,买电脑,写文章,平面设计!
2019-04-29
【第二期】那些设计漂亮、有创意的电路板!
2019-04-29
【第三期】那些设计漂亮、有创意的电路板!
2019-04-29
继续推荐公众号~
2019-04-29
「第二篇」全国一等奖,经验帖。
2019-04-29
「第三篇」全国电子设计竞赛,这些你必须知道的比赛细节,文末附上近十年电赛题目下载...
2019-04-29
5G小科普(漫画版,So easy!)
2019-04-29
无人再提华强北
2019-04-29
千万不要小瞧那些不好好写代码的程序员
2019-04-29
80后,天才程序员, Facebook 第一任 CTO,看看开挂的人生到底有多变态?
2019-04-29
「第四篇」电赛控制题可以准备一些什么?
2019-04-29
「第五篇」全国电子设计竞赛-电源题设计方案总结
2019-04-29