【发布时间】:2018-04-13 19:19:41
【问题描述】:
我是 Android 新手,我正在开发一个带有一组严格参数的小型项目。其中之一是有一个多功能按钮,每次单击它都会增加一个计时器,并且只有在我没有增加所述计时器 3 秒后才会启动。
我找到了三到四种方法来设置各种警报,使用 Handler、CountDownTimer、Timer 或其他方式,但我对如何做我正在寻找的事情感到困惑仅使用 onClick() 方法。
等待3s()的函数,我在之后调用它:
public void wait3s()
{
Thread thread = new Thread() {
@Override
public void run()
{
while (!isInterrupted()) {
try {
Thread.sleep(3000);
runOnUiThread(new Runnable() {
@Override
public void run() {
count++;
threeS.setText(String.valueOf(count));
}
});
} catch (InterruptedException e) {
e.printStackTrace();
}
}
}
};
thread.start();
}
我的onClick() 只是调用这些:
public void onClick(View view)
{
increment();
wait3s();
startStop();
}
如您所见,部分问题是我在每次点击时都会调用wait3s(),我需要一种方法来控制线程/计时器(无论如何),而不是在每次点击时创建一个新的.我现在有点笨,但我已经做了一段时间了,但我仍然空虚,因为我以前从未使用过这个。
我发现wait3s() 函数的另一个选项是in this other StackOverflow thread。
谢谢
PS:对不起标题,我找不到更好的方式来描述它,如果你有它,并且有能力改变它,请做。
【问题讨论】:
标签: java android multithreading