Android中实现延时执行操作

版权声明: https://blog.csdn.net/wq6ylg08/article/details/89359107

在Android开发中我们可能会有延时执行某个操作的需求,例如我们启动应用的时候,一开始呈现的是一个引导页面,过了两三秒后,会自动跳转到主界面。这就是一个延时操作。
下面是实现延时执行操作的几种方法:
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方法

实现Button延迟固定时间后才可点击:
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_welcome);
handler.sendEmptyMessageDelayed(0,10000);
}
private Handler handler=new Handler(){
@Override
public void handleMessage(Message msg){
//延迟后再给Button加入监听事件,实现延迟后才可点击
//延迟后要实现的事情在这里显示
Button button_delay=(Button)findViewById(R.id.button_delay);
button_delay.setOnClickListener(new Button.OnClickListener(){
@Override
public void onClick(View v) {
Toast.makeText(WelcomeActivity.this,“youclicked”,Toast.LENGTH_SHORT).show();
}
});
super.handleMessage(msg);
}
};
}

猜你喜欢

转载自blog.csdn.net/wq6ylg08/article/details/89359107