Android计时器问题

计时器每过一秒钟加一,点击用的是ontouch方法privatevoidsetTimerTask(){timer.schedule(newTimerTask(){publ... 计时器每过一秒钟加一,点击用的是ontouch方法
private void setTimerTask()
{
timer.schedule(new TimerTask()
{
public void run()
{
miss++;
}
}, 0, 1000);
}
public boolean onTouch(View arg0, MotionEvent arg1)
{
if(flag){
flag = false;
setTimerTask(); //计时器加一
SimpleDateFormat b = new SimpleDateFormat("HH:mm:ss");
Date currentTime = new Date();
String s2 = b.format(currentTime);
cantime1.setStatus(s2);//显示当前时间
}else{
flag = true;
}
return flag;
}
原本我想点击开始计时,再次点击停止计时,但是现在总是点击了之后原来的线程(算是线程吧o(╯□╰)o)还在运行,点击之后每秒加2,3,4更多了,我应该怎么改才能有效果。
展开
 我来答
wbombarddd
2014-11-06 · TA获得超过111个赞
知道答主
回答量:246
采纳率:0%
帮助的人:141万
展开全部
public boolean onTouch(View arg0, MotionEvent arg1)
{
if(flag){
flag = false;
timer,cancel();
SimpleDateFormat b = new SimpleDateFormat("HH:mm:ss");
Date currentTime = new Date();
String s2 = b.format(currentTime);
cantime1.setStatus(s2);//显示当前时间
}else{
flag = true;
}
return flag;
}
好像不对,总之你要暂停的时旁野候就运山喊用timer.cancel();只要miss在就能记住之前的状态了,唯模计时器再开的时候再setTimerTask
更多追问追答
追问
setTimeTask的方法是我自己写的,还有转换成时分秒计时器的代码没有贴上来,能不能把setTimetask这个方法给终止了。现在的问题是点击次数越多,每秒加的秒速就越大
追答
timer.cancel();不能终止吗
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式