用Thread和Handler实现倒计时
来源:互联网 发布:java开发工具百度云 编辑:程序博客网 时间:2024/05/17 02:41
在android开发中, 很多时候需要倒计时, 如获取验证码时.
需要一个倒计时在界面显示出来, 可以开个线程更新界面,
但非UI线程无法更新界面, 就需要用到Handler了
代码实现:
<span style="font-size:18px;">btn = (Button)findViewById(R.id.btn);btn.setOnClickListener(new OnClickListener(){<span style="white-space:pre"></span>@Overridepublic void onClick(View v) {new Thread(){@Overridepublic void run() {for(; count > 0; count--){if(count<=0){break;}mHandler.sendEmptyMessage(0x01);try {Thread.sleep(1000);} catch (Exception e) {<span style="white-space:pre"></span>// TODO: handle exception}}mHandler.sendEmptyMessage(0x02);};}.start();}});</span>
<span style="font-size:18px;">private Handler mHandler = new Handler(){<span style="white-space:pre"></span>@Override<span style="white-space:pre"></span>public void handleMessage(Message msg) {<span style="white-space:pre"></span>switch (msg.what) {<span style="white-space:pre"></span>case 0x01:<span style="white-space:pre"></span>btn.setText("倒计时("+ count+")");<span style="white-space:pre"></span>break;<span style="white-space:pre"></span>case 0x02:<span style="white-space:pre"></span>btn.setText("倒计时开始");<span style="white-space:pre"></span>default:<span style="white-space:pre"></span>break;<span style="white-space:pre"></span>}<span style="white-space:pre"></span>};};</span>实现效果:
0 0
- 用Thread和Handler实现倒计时
- 使用Sharepreference+Thread+Handler进行异步处理实现倒计时功能
- Handler和Timer实现倒计时跳转页面
- Android----------Handler和Timer实现倒计时
- 用Handler与Timer实现progressDialog倒计时
- Andorid启动页倒计时用Handler实现
- Handler实现倒计时
- 倒计时 Timer和handler
- Handler和Timer实现倒计时和三秒跳转
- android Thread/Handler 实现
- thread和handler区别
- Android 定时任务之Timer和Handler实现倒计时效果(附:adapter列表倒计时)
- Android通过子线程和handler实现倒计时,可以开始暂停倒计时
- 方法一、使用Handler和Thread(线程)实现定时器
- Thread、Looper、Handler和Message
- AsyncTask和Thread Handler对比
- Thread、Looper、Handler和Message
- AsyncTask和Thread+Handler对比
- Facebook这次开源的代码名为“Big Sur”,
- ASCII,Unicode和UTF-8
- Qt之国际化
- [leetcode 228] Summary Ranges
- windows7的host下,VMware中Ubuntu联网设置方法
- 用Thread和Handler实现倒计时
- Foundation框架介绍
- Xcode7 HTTP不能正常使用的方法
- 关于HTMLCollection和NodeList
- 自己动手“敲”微软100题系列四
- 图片2d旋转
- 可扩展机器学习——线性回归(linear Regression)
- Android Studio调试功能使用总结【转】
- 正则表达式的学习