Handler实现倒计时的两种方式
来源:互联网 发布:百分点vb 诱鱼 编辑:程序博客网 时间:2024/05/17 22:19
背景:
最近项目中,正好做到登录/注册这个功能块。它需要通过发送验证码,在规定的时间内用验证码来完成登录/注册。之前的项目中也有这个功能,但是觉得太复杂了,只好自己重新实现一遍。用Handler来做,觉得代码简介,逻辑也清楚。
代码一:
//在向服务端发送获取验证码成功的回调函数中,开始发消息:mHandler.obtainMessage();mHandler.sendEmptyMessage(MSG_CODE);//消息的处理: private static final int MSG_CODE = 0; private int limitTime = 121; private Handler mHandler = new Handler(new Handler.Callback() { @Override public boolean handleMessage(Message msg) { if(msg.what==MSG_CODE){ limitTime--; if(limitTime>0){ mHandler.sendEmptyMessageDelayed(MSG_CODE,1000); mBtnVerify.setText("倒计时:"+limitTime+"s"); }else{ limitTime =121;//再次给limitTime 赋值,以便能重新计时 mBtnVerify.setText("获取验证码"); } return true; } return false; } });
代码二:
//在向服务端发送获取验证码成功的回调函数中,开始发消息:mHandler.post(myRunnale);//消息的处理: private int time = 11; private Handler mHandler = new Handler(); private Runnable myRunnale = new Runnable() { @Override public void run() { time--; if(time>0){ mHandler.postDelayed(myRunnale,1000); mTvChange.setText("剩余"+time+"s"); }else{ mTvChange.setText("完毕"); } } };
从上述代码中可以看出:使用Handler.post(Runnable) 是一个发布Messgae的便利方法。
阅读全文
0 0
- Handler实现倒计时的两种方式
- ios 倒计时的两种实现方式
- iOS活动倒计时的两种实现方式
- Android-两种方式实现倒计时
- Java格式化倒计时的两种方式
- 倒计时实现的两种方法
- Android倒计时的三种实现方式
- Android 实现倒计时的几种方式
- 顺时针、逆时针两种方式减小的倒计时动画
- progressBar两种实现方式Handler 和AsyncTask
- AsyncTask和Handler两种异步方式的实现和区别比较
- AsyncTask和Handler两种异步方式的实现和区别比较
- AsyncTask和Handler两种异步方式的实现和区别比较
- AsyncTask和Handler两种异步方式的实现和区别比较
- AsyncTask和Handler两种异步方式的实现和区别比较
- AsyncTask和Handler两种异步方式的实现和区别比较
- AsyncTask和Handler两种异步方式的实现和区别比较
- AsyncTask和Handler两种异步方式的实现和区别比较
- Nginx+tomcat负载均衡session问题解决
- JS字符串String面向对象方法
- Android软键盘弹出,界面整体上移的问题
- 催收需求
- BT5关于修改静态IP及遇到的问题
- Handler实现倒计时的两种方式
- Linux--生产者与消费者
- LeetCode 2. Add Two Numbers[Medium]
- Java中单元测试中:@BeforeClass,@Before,@Test,@After,@AfterClass中的问题详解
- cocos creator从零开始做酷跑小游戏 | 前言以及资源
- numpy笔记---random
- (4)Centos6.X升级Python为2.7版本并安装Pip
- Python基础-函数参数
- Spring MVC + Mbatis + RabbitMQ 整合(1)