I want to cause my program to pause for a certain number of milliseconds, how exactly would I do this?
I have found different ways such as Thread.sleep( time )
You really should not sleep the UI thread like this, you are likely to have your application force close with ActivityNotResponding exception if you do this.
If you want to delay some code from running for a certain amount of time use a Runnable and a Handler like this:
Runnable r = new Runnable() {
@Override
public void run(){
doSomething(); //<-- put your code in here.
}
};
Handler h = new Handler();
h.postDelayed(r, 1000); // <-- the "1000" is the delay time in miliseconds.
This way your code still gets delayed, but you are not "freezing" the UI thread which would result in poor performance at best, and ANR force close at worst.