2015-01-21 3 views
0

Моя программа с Timer работала на Java, но не работала в Android. Android не принял ActionListener, ActionEvent или timer.start(), timer.stop(). Что мне делать? Большое спасибо за любую помощь!Как использовать Java Timer в Android?

private Timer timer; 

    timer = new Timer(2 * 1000, new ActionListener(){ 
    public void actionPerformed(ActionEvent e) { 

      if(condition == true) { 
      // do my job when it's true 
            } 
      else{ 
      timer.stop(); //stop it 
       } 
               } 
      }); 
      timer.setRepeats(true);//auto restarts the timer after it triggers 
+0

Какой тип таймера вы используете? java.util.Timer? javax.swing.Timer? java.util.Timer не принимает ActionListener в конструкторе ... – John3136

+0

Я импортирую javax.swing.Timer; –

ответ

1

Вы должны использовать java.util.Timer класс вместо javax.swing.Timer класса вы использовали ранее.

Поэтому вы должны построить таймер с помощью java.util.TimerTask вместо ActionListener.

Также вы не можете многократно останавливать и запускать этот таймер. Вы можете использовать только cancel(), после чего его нельзя использовать повторно, поэтому вы должны создать новый таймер для каждого раза, когда хотите его запустить.