我使用Timer的程序在Java中工作但在Android中不起作用。 Android不接受ActionListener,ActionEvent或timer.start(),timer.stop()。我该怎么办?非常感谢您的帮助!
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 :(得分:1)
您必须使用java.util.Timer
课程,而不是之前使用的javax.swing.Timer
课程。
因此,您必须使用java.util.TimerTask
而不是ActionListener构建计时器。
此外,你不能反复停止和启动这种计时器。您只能cancel()
它,之后无法重复使用,因此您必须为每次启动时创建一个新的计时器。