目前开发涉及到一个延迟操作场景:点击一个按钮,实现一个旋转动画,2秒钟后,然后需要跳转到一个新页面的操作,(比如微信收红包的操作)

在这里记录一下几种实现延时执行操作的方法:

1.使用线程的休眠实现延时操作

new Thread() {
@Override
public void run() {
super.run();
Thread.sleep(3000);//休眠3秒
/**
* 要执行的操作
*/
}
}.start();

2.使用TimerTask实现延时操作

TimerTask task = new TimerTask() {
@Override
public void run() {
/**
*要执行的操作
*/
}
};
Timer timer = new Timer();
timer.schedule(task, 3000);//3秒后执行TimeTask的run方法

3.使用Handler的postDelayed方法实现延时操作

Handler handler = new Handler();
handler.postDelayed(new Runnable() {
@Override
public void run() {
/**
*要执行的操作
*/
}
}, 3000);//3秒后执行Runnable中的run方法

推荐使用第三种