时间:2020-11-03 13:47:11 | 栏目:Android代码 | 点击:次
在Android开发中我们可能会有延时执行某个操作的需求,例如我们启动应用的时候,一开始呈现的是引导页面,3秒后进入主界面,这就是一个延时操作。
下面是实现延时操作的三种方法:
一、使用线程的休眠实现延时操作
new Thread(new Runnable() { @Override public void run() { Thread.sleep(1000); // 休眠1秒 /** * 延时执行的代码 */ } }).start();
二、使用TimerTask实现延时操作
Timer timer = new Timer(); timer.schedule(new TimerTask() { @Override public void run() { /** * 延时执行的代码 */ } },1000); // 延时1秒
三、使用Handler的postDelayed()方法实现延时操作
new Handler().postDelayed(new Runnable() { @Override public void run() { /** * 延时执行的代码 */ } },1000); // 延时1秒
注:由于前两种在更新UI时,如果不使用消息处理机制的话,会报如下异常:Only the original thread that created a view hierarchy can touch its views.(只能在主线程中更新UI),为了避免这种错误出现,在使用延时操作的时候推荐使用第三种。