2012-03-24 15 views
2

私はこのコードを持っており、1000ミリマイルごとにLog.dを実行したいのですが、一度だけ実行します。Handler、Timerは1回だけ実行できますか?

seekView.postDelayed(new Runnable() { 

       public void run() { 
        Log.d("WWWW", "www"); 

       } 
      }, 1000); 

ハンドラ、タイマーを作成する...このように一度だけ実行すると、どこに問題がありますか?

答えて

5

1秒の間隔で連続して実行し、それを維持するために、あなたは再びあなたのラン方法で入れ子になったようpostDelayedを呼び出す必要があります。 1秒の間隔でそれを自己を呼び出し、それを維持するそう

seekView.postDelayed(new Runnable() { 

    public void run() { 
    Log.d("WWWW", "www"); 

    //calling postdelayed again 
    seekView.postDelayed(this, 1000);  //added this line 
    } 
}, 1000); 

:以下の例を参照してください。繰り返しのため

3

用途:

... 
class YourTimeTask extends TimerTask { 
    public void run() { 
    .... 
    } 
} 

... 
new Timer().scheduleAtFixedRate(new YourTimerTask(), after, interval); 
... 
関連する問題