方案1:线程阻告坦断
try {
Thread.currentThread().sleep(2000)//阻断2秒
} catch (InterruptedException e) {
e.printStackTrace()
}
方案缺友模2:使用Handler的postDelayed延迟 *** 作。
mHandler .postDelayed(mRunnable, 3000)// 在Handler中执行子线程并延迟3s。
private Runnable mRunnable = new Runnable() {
@Override
public void run() {
mHandler.sendEmptyMessage(1)
}
}
Handler mHandler = new Handler() {
@Override
public void handleMessage(Message msg) {
super.handleMessage(msg)
//3s后执行代码
}
}。
在Android开发中我们可能会有延时执行某个 *** 作的需求,例如我们启动应用的时候,一开始呈现的是一个引导页面,过了两三秒后,会自动跳转到主界面。这就是一个延时 *** 作。
下面是实现延时执行 *** 作的几种方法:
new Thread() {
@Override
public void run() {
super.run()
Thread.sleep(3000)//休眠3秒
/**
* 要执行的 *** 作
*/
}
}.start()
TimerTask task = new TimerTask() {
@Override
public void run() {
竖颂粗 /**
*要执行的 *** 作
*/
}
}
Timer timer = new Timer()
timer.schedule(task, 3000)//3秒后执行TimeTask的run方法
Handler handler = new Handler()
handler.postDelayed(new Runnable() {
@Override
public void run() {
/**
*要执行的 *** 作
*/
}
樱者 }, 3000)//3秒后执行余镇Runnable中的run方法
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)