0

我正在使用以下代码在特定时间段(例如 9 秒)后执行方法。该代码仅在第一次执行后才能正常工作。但是我希望在启动活动时必须在 9 秒后调用该方法。现在发生的是该方法在活动启动时被调用,然后在 9 秒后再次被调用。以下是我的代码:

 private Timer myTimer;
 myTimer = new Timer();
 myTimer.schedule(new TimerTask() 
 {          
    @Override
    public void run() 
    {
        TimerMethod();
    }
 }, 0, 9000);


   private void TimerMethod()
   {
        this.runOnUiThread(Timer_Tick);
   }
  private Runnable Timer_Tick = new Runnable() 
  {
    public void run() 
    {

        //Did some UI Operation 
        Toast.makeText(context, msg, 1000).show();

    }
  };
4

1 回答 1

3

你可以使用这个:

 private void TimeMethod() {

    new Handler().postDelayed(new Runnable() {

        @Override
        public void run() {

            //TODO after 9 sec
        }
    }, 9000);

}

希望这将是有用的,

干杯

于 2013-07-05T13:07:43.650 回答