关于Timer计时器控件的java.lang.IllegalStateException: TimerTask is scheduled already问题分析
来源:互联网 发布:多益网络登录器 编辑:程序博客网 时间:2024/05/22 08:47
博主最近在改被人的项目,准备写一个类似今日头条的加载完成提示,就写了个计时器让它显示几秒,于是就用到了timer这个计时器控件,简单的正常代码如下,因为博主的加载需要多次,当timer二次调用的时候就出现了java.lang.IllegalStateException: TimerTask is scheduled already异常,于是苦恼了老半天,不知道为什么,每次刷新的时候我哦重新给timer 创建新对象或者cancel()都还是报这个异常,正常的timer代码如下
Timer timer = new Timer();private int tips_time= 20;public void tipsStart() { timer .schedule(taskTips, 1000, 1000); // timeTask } final Handler handlerTips = new Handler() { @Override public void handleMessage(Message msg) { switch (msg.what) { case 1: if (tips_time < 0) { timerTipS.cancel(); } } } };TimerTask taskTips = new TimerTask() { @Override public void run() { tips_time--; Message message = new Message(); message.what = 1; handlerTips.sendMessage(message); } };
然后楼主翻阅了很多资料才发现,只要timer这个控件第二次调用就会出现出现这个异常,解决办法如下,自定义一个类集成TimerTask即可
class RequestTimerTask extends TimerTask { public void run() { tips_time--; Message message = new Message(); message.what = 1; handlerTips.sendMessage(message); } }然后把
timer .schedule(taskTips, 1000, 1000);中的taskTips改成 new RequestTimerTask();即可,完美解决!
0 0
- 关于Timer计时器控件的java.lang.IllegalStateException: TimerTask is scheduled already问题分析
- java.lang.IllegalStateException: TimerTask is scheduled already问题分析
- java.lang.IllegalStateException: TimerTask is scheduled already
- android TimerTask 的简单应用,以及java.lang.IllegalStateException: TimerTask is scheduled already错误的解决方法
- android TimerTask 的简单应用,以及java.lang.IllegalStateException: TimerTask is scheduled already错误的解决方法
- android TimerTask 的简单应用,以及java.lang.IllegalStateException: TimerTask is scheduled already错误的解决方法
- 错误 java.lang.IllegalStateException: TimerTask is scheduled already错误的解决方法
- IllegalStateException: TimerTask is scheduled already
- 关于错误:TimerTask is scheduled already
- 关于错误:TimerTask is scheduled already
- 关于错误:TimerTask is scheduled already
- TimerTask is scheduled already
- 关于java.lang.IllegalStateException: Fragment already added的一些问题
- 关于java.lang.IllegalStateException: Fragment already added的问题
- TimerTask is scheduled already 异常
- TimerTask is scheduled already 异常
- TimerTask is scheduled already 解决方法
- android TimerTask 的简单应用,以及java.lang.IllegalStateException: TimerTask is schedule
- ERROR 1146 (42S02): Table 'eip_fileservice.t_document_file' doesn't exist
- Android Multimedia框架总结(九)Stagefright框架之数据处理及到OMXCodec过程
- 为何与0xff进行与运算
- 开发中遇到Js缓存问题。和页面会话级别的缓存。
- ndroid OS MTK6573 SD卡驱动浅析
- 关于Timer计时器控件的java.lang.IllegalStateException: TimerTask is scheduled already问题分析
- 【JavaScript】实现一个数组惰性求值库
- ubuntu下/etc/rc.local和/etc/init.d/rc.local的区别
- leetcode 516. Longest Palindromic Subsequence
- Linux运维笔记-文档总结-系统恢复技术之MBR引导出错修复
- Form表单上传大文件,无法进入后台Action,页面提示404.
- 开发流程总结
- jmeter中java协议请求
- Java NIO系列博客之组件篇