Your current code iterates through, posting a delayed action to occur in 6 seconds time.
The loop iterates through very fast, so all the posts for "something to happen in 6 sec" are very close together.
If you want each successive action to be posted later you should do something like:
mHandler.postDelayed(new Runnable() {
public void run() {
animDelay(first);
}
}, (i * 6000) );