I need the equivalent code of setTimeOut(call function(),milliseconds);
for android.
setTimeOut(call function(),milliseconds);
setTimeout() The global setTimeout() method sets a timer which executes a function or specified piece of code once the timer expires.
setTimeout allows us to run a function once after the interval of time. setInterval allows us to run a function repeatedly, starting after the interval of time, then repeating continuously at that interval.
setInterval() The setInterval() method, offered on the Window and Worker interfaces, repeatedly calls a function or executes a code snippet, with a fixed time delay between each call. This method returns an interval ID which uniquely identifies the interval, so you can remove it later by calling clearInterval() .
You probably want to check out TimerTask
Since you brought up this again I'd like to make a different recommendation, which is a Handler. It is simpler to use than a TimerTask as you won't need to explicitely call runOnUiThread as the Handler will be associated with the UI thread so long as it's created on the UI thread or you create it using the main looper in it's constructor. It would work like this:
private Handler mHandler; Runnable myTask = new Runnable() { @Override public void run() { //do work mHandler.postDelayed(this, 1000); } } @Override public void onCreate(Bundle savedState) { super.onCreate(savedState); mHandler = new Handler(Looper.getMainLooper()); } //just as an example, we'll start the task when the activity is started @Override public void onStart() { super.onStart(); mHandler.postDelayed(myTask, 1000); } //at some point in your program you will probably want the handler to stop (in onStop is a good place) @Override public void onStop() { super.onStop(); mHandler.removeCallbacks(myTask); }
There are some things to be aware of with handlers in your activity:
This is the code that i used in my current project. I used TimerTask as Matt said. 60000 is the milisec. = 60 sec. i used it to refresh match scores.
private void refreshTimer() { autoUpdate = new Timer(); autoUpdate.schedule(new TimerTask() { @Override public void run() { runOnUiThread(new Runnable() { public void run() { adapter = Score.getScoreListAdapter(getApplicationContext()); adapter.forceReload(); setListAdapter(adapter); } }); } }, 0, 60000);
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With