【发布时间】:2015-08-17 08:00:55
【问题描述】:
如何停止 Timer 线程? 我有一个计时器线程,我想停止它。我该怎么做?
我试图通过停止线程来停止,但没有成功。 有任何想法吗? 提前感谢您的帮助
这是我的代码:
public void startTimer() {
startTime = System.currentTimeMillis();
final Handler handler = new Handler();
task =new Thread() {
@Override
public void run() {
long millis = System.currentTimeMillis()-startTime;
long secs = millis / 1000 % 60; // seconds, 0 - 59
long mins = millis / 1000 / 60 % 60; // total seconds / 60, 0 - 59
long hours = millis / 1000 / 60 / 60; // total seconds / 3600, 0 - limitless
timeString = String.format("%02d:%02d:%02d", hours, mins, secs);
runOnUiThread(new Runnable() {
@Override
public void run() {
mtvtimer.setText(timeString);
}
});
handler.postDelayed(task, 1000);
}
};
task.start();
}
【问题讨论】:
-
你有一个线程和一个可运行对象,我认为你需要停止两者
-
它不是时钟这是一个计时器 HH:MM:SS
-
你能给我看一些代码吗?我试图这样做,但我无法解决它