一个使用Handler的postDelayed()方法的大bug,求指点
fan12 2016-08-06 03:45:22 我编写了一个用Handler和Runnable实现简单自动播放的功能,
在Runnalbe的run()方法里用了一个postDelayed(mRun, SPEED); 当播放完最后一个内容后removeCallbacks(mRun);
然后在“开始”按钮的监听事件中mHandler.post(mRun); 在“快进”和“后退”的监听事件中也写了removeCallbacks(mRun)和postDelayed(mRun, SPEED)的代码,以便保持播放的节奏。
但是在测试的时候由于极快的点击了“快进”按钮(大概几十下),当重新点击“开始”按钮时,自动的播放的速度忽然变得极快,SPEED参数完全不起作用了!
关闭程序后重新打开仍然是那样,关闭手机重启也不行,关机抠电池重启也不行
求大神分析一下问题大概可能出在什么地方?
关键是程序重启也不行,是android底层的Handler处理出什么问题了吗?