计时器不会在android中停止

前端之家收集整理的这篇文章主要介绍了计时器不会在android中停止前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
我在 android中创建了一个应用程序并使用了这样的计时器..
try {
    CountDownTimer  start1 = new CountDownTimer(20000,1000) {

        public void onTick(long millisUntilFinished) {
                TextView timeShow = (TextView)findViewById(R.id.showTime);
        timeShow.setText(" "+" 00:" +millisUntilFinished / 1000);
            }

但我的问题是我不知道如何停止计时器.任何的想法?

我已经尝试过:

quitApplication.setOnClickListener(new OnClickListener() {
    public void onClick(View v) { 
        start1.cancel(); 
        Intent i = new Intent(v.getContext(),startGame.class);
        startActivity(i);
        // TODO Auto-generated method stub 
    } 
});

解决方法

start1.cancel()是调用取消计时器的正确方法.

你没有提供有关你得到的错误或为什么它不适合你的任何细节,但我假设你的程序没有编译,因为你的变量start1是一个局部变量.它可能是您的try块所在的任何方法的本地.这意味着您的OnClickListener构造不知道start1是什么.

解决此问题,只需将start1声明为类变量(在所有方法之外但在类中):

public class someClass {

CountDownTimer start1;
// blah some code
public void someMethod {
   try {
      start1 = new CountDownTimer() { //etc

这样做将允许其他方法识别start1并与之交互

猜你在找的Android相关文章