计划将来执行代码

时间:2016-09-27 16:45:34

标签: android events handler

我想知道实现这种行为的最佳方法是什么:

我有一个事件X,其ID会不时发生。 如果发生了具有某个id的事件,我想在25秒后执行一些代码,除非再次发生具有相同id的X,在这种情况下我希望它再次推迟25秒。

实施此方法的最佳方法是什么?

1 个答案:

答案 0 :(得分:0)

以下是如何使用简单的处理程序来延迟运行25秒的事情。由您决定如何过滤某些ID。

Handler handler = new Handler();

   public void myEvent() {

      // Remove any callback that may be registered, this will reset it if called before
      handler.removeCallbacks(runMe);
      // Execute the runnable in 25 seconds
      handler.postDelayed(runMe, 25000);
   }
   Runnable runMe = new Runnable() {

      @Override
      public void run() {
         // This will run after the postDelayed expires in 25 seconds
         Log.d("TAG", "Run me at some time");
      }
   };