3

我正在尝试实现以下行为:

您按下一个在多个元素之间切换的按钮(在摆动中)。关键是,只有在最后一秒没有发生切换时才会出现消息或其他内容。这意味着您按下button1,等待一秒钟,然后出现您按下的消息button1;如果您按button1,然后(不到一秒钟)按button2,消息应该说button2被按下。

我发现了一些类似这样的计时器(我现在知道,这是一个 android 示例。也许swing 有类似的东西??):

final Handler handler = new Handler();
handler.postDelayed(new Runnable() {
  @Override
  public void run() {
    //Do something after 1000ms
  }
}, 1000);

我怎么能停止任务?我不需要任何代码,只是一个提示。

4

1 回答 1

2

对于代码

final Handler handler = new Handler();
Runnable runIt = new Runnable() {
  @Override
  public void run() {
  //Do something after 1000ms
  }
}
handler.postDelayed(runIt, 1000);

您可以通过以下方式从队列中删除消息

handler.removeCallbacks(runIt);
于 2012-07-03T14:52:19.487 回答