Android按钮屏蔽计时器(handler+TimerTask)
2013-01-30 10:16
531 查看
在Android应用中,遇到多次点击按钮导致的重复提交订单的问题。该问题有两种解决方案,一是后台对近似时间的订单进行过滤,二则在应用层面避免重复点击按钮。
这里,我们通过handler+TimerTask计时器结合实现屏蔽按钮2秒的功能:
View Code
http://blog.csdn.net/andych008/article/details/7802032
/article/5665542.html
这里,我们通过handler+TimerTask计时器结合实现屏蔽按钮2秒的功能:
View Code
TimerTask task ; Timer timer; timer = new Timer(true); soundPool = new SoundPool(2, AudioManager.STREAM_MUSIC, 100); loadId = soundPool.load(context, R.raw.zero, 1); loadId1 = soundPool.load(context, R.raw.one, 2); loadId2 = soundPool.load(context, R.raw.two, 3); loadId3 = soundPool.load(context, R.raw.three, 4); loadId4 = soundPool.load(context, R.raw.four, 5); loadId5 = soundPool.load(context, R.raw.five, 4); loadId6 = soundPool.load(context, R.raw.six, 3); loadId7 = soundPool.load(context, R.raw.seven, 2); loadId8 = soundPool.load(context, R.raw.eight, 1); loadId9 = soundPool.load(context, R.raw.nine, 1); } Handler buttonhandler = new Handler(){ public void handleMessage(Message msg) { switch (msg.what) { case 1: nextbutton.setEnabled(true); button1.setEnabled(true); button2.setEnabled(true); button3.setEnabled(true); button4.setEnabled(true); button5.setEnabled(true); button6.setEnabled(true); break; } super.handleMessage(msg); } }; nextbutton.setEnabled(false); buttonhide(nextbutton); private void buttonhide(Button b){ b.setEnabled(false); if (task != null){ task.cancel(); //将原任务从队列中移除 \ } task = new TimerTask(){ public void run() { Message message = new Message(); message.what = 1; buttonhandler.sendMessage(message); } }; timer.schedule(task,2000); //延时1000ms后执行,1000ms执行一次 }
http://blog.csdn.net/andych008/article/details/7802032
/article/5665542.html
相关文章推荐
- 进阶_计时器(Handler+TimerTask实现)_150503
- android Timer TimerTask Handler 设备震动
- android 计时器的三种实现(Chronometer、Timer、handler)
- android 定时任务(TimerTask和Handler对比)
- Android实现调度任务的三种方式:TimerTask、ScheduledExecutorService、Handler
- android 计时器的三种实现(Chronometer、Timer、handler)
- android thread handler timertask
- Android开发应用之计时器(TimerTask和Timer)
- Android中三种计时器Timer、CountDownTimer、handler.postDelayed的使用
- 60秒倒计时登录验证按钮计时器Timer Task
- Android中三种计时器Timer、CountDownTimer、handler.postDelayed的使用
- Android计时器的三种实现方式(Chronometer、Timer、handler)
- Android中TimerTask与Handler延迟多线程源代码
- Android杂谈之Handler与timer及TimerTask结合实现定时任务
- Android timer handler schedule jobSchedule 总结
- Timer搭配TimerTask与Handler使用(更新UI)
- Android中timer(计时器)的使用
- timer+TimerTask+handler倒计时-----小例子深奥多
- android AppWidget的使用以及利用TimerTask实现widget的定时更新
- Handler vs Timer : fixed-period execution and fixed-rate execution android development