Do powtarzania zadania możesz użyć
new Timer().scheduleAtFixedRate(task, runAfterADelayForFirstTime, repeaingTimeInterval);
nazywaj to jak
new Timer().scheduleAtFixedRate(new TimerTask() {
@Override
public void run() {
}
},500,1000);
Powyższy kod zostanie uruchomiony po raz pierwszy po pół sekundy (500) i powtórzy się po każdej sekundzie (1000)
Gdzie
zadanie będące metodą do wykonania
po czasie do pierwszego wykonania
( przedział czasu na powtórzenie wykonania)
Po drugie
Możesz także użyć CountDownTimer, jeśli chcesz wykonać zadanie kilka razy.
new CountDownTimer(40000, 1000) { //40000 milli seconds is total time, 1000 milli seconds is time interval
public void onTick(long millisUntilFinished) {
}
public void onFinish() {
}
}.start();
//Above codes run 40 times after each second
Możesz to również zrobić przy pomocy Runnable. utwórz metodę uruchamialną, taką jak
Runnable runnable = new Runnable()
{
@Override
public void run()
{
}
};
I nazwij to na dwa sposoby
new Handler().postDelayed(runnable, 500 );//where 500 is delayMillis // to work on mainThread
LUB
new Thread(runnable).start();//to work in Background