2

我正在 Aandroid 中制作一个项目,其中我需要一次又一次地启用和禁用多个计时器。要重新启动我试过的计时器timer1.cancel()timer1.purge等等timer2.schedule,还有wait。但是每次程序都崩溃了。没有语法错误。这是示例:

foc.setOnClickListener(new View.OnClickListener() {

 @Override
 public void onClick(View v) {

  if(col==1)
  {
   t.cancel();
   t.purge();
   songt=new Timer();
   songt.schedule(songtask, 1000, mdl.getspeed());
  }
}
});  


b[len].setOnClickListener(new View.OnClickListener() {

                @Override
                public void onClick(View arg) {
                        songt.cancel();
                        songt.purge();
                        //t=new Timer();
                        t.scheduleAtFixedRate(ttask, 1000, mdl.getspeed());
                    }
                });  

public TimerTask ttask=new TimerTask() {

    @Override
    public void run() {
                runOnUiThread(new Runnable()
                {
                    public void run()
                    { 
                        foc.requestFocus();
                        if(col==1)
                        {
                            lay.setBackgroundColor(Color.TRANSPARENT);
                            op.setBackgroundColor(Color.CYAN);
                        }
                        else
                        {
                            op.setBackgroundColor(Color.TRANSPARENT);
                            lay.setBackgroundColor(Color.CYAN);
                        }
                        col=1-col;
                    }
                });
    }
};


public TimerTask songtask=new TimerTask() {

    @Override
    public void run() {
        runOnUiThread(new Runnable()
        {
            public void run()
            { 
                b[in].requestFocus();
                if(rev==0)
                {
                    in++;
                    if(in==len) 
                        in=0;
                }
                else if(rev==1)
                {
                    in--;
                    if(in==-1) in=len-1;
                }
            }
        });

    }
};
4

0 回答 0