我有一些这样的代码:
public class MainActivity extends AppCompatActivity {
private Button StartButton;
private Button StopButton;
private Timer timer;
protected void onCreate(Bundle savedInstanceState) {
//some code
StartButton.setOnClickListener(new View.OnClickListener() {
public void onClick(View v) {
//some code
timer = new Timer();
timer.schedule(task, 0, interval);
timer.start();
}
});
StopButton.setOnClickListener(new View.OnClickListener() {
public void onClick(View v) {
//some code
timer.cancel();
timer = null;
}
});
}
}
问题是当 onDestroy() 被调用时,计时器线程继续工作,但是到计时器对象的链接丢失了,所以我无法再控制它了。我怎样才能保留链接?
最佳答案
如果即使在 Activity
被销毁后您仍需要 Timer 工作,那么您不应该将 Timer 绑定(bind)到 Activity 生命周期。使用 Service
来控制计时器,因为您的目的是即使在 Activity
被销毁后仍能保持计时器工作/运行。 服务
旨在用于此目的。
关于java - 安卓:定时器问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35912444/