Android 延时操作的三种方式

原文:https://blog.csdn.net/qq_33833327/article/details/70946086

感谢博主!

在Android开发中我们可能会有延时执行某个操作的需求,例如我们启动应用的时候,一开始呈现的是引导页面,3秒后进入主界面,这就是一个延时操作。

下面是实现延时操作的三种方法:


一、使用线程的休眠实现延时操作

new Thread(new Runnable() {
            @Override
            public void run() {

                Thread.sleep(1000); // 休眠1秒

                /**
                 * 延时执行的代码
                 */

            }
        }).start();
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12

二、使用TimerTask实现延时操作

        Timer timer = new Timer();
        timer.schedule(new TimerTask() {
            @Override
            public void run() {

                /**
                 * 延时执行的代码
                 */

            }
        },1000); // 延时1秒
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11

三、使用Handler的postDelayed()方法实现延时操作

new Handler().postDelayed(new Runnable() {
            @Override
            public void run() {

                /**
                 * 延时执行的代码
                 */

            }
        },1000); // 延时1秒
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10

注:由于前两种在更新UI时,如果不使用消息处理机制的话,会报如下异常:Only the original thread that created a view hierarchy can touch its views.(只能在主线程中更新UI),为了避免这种错误出现,在使用延时操作的时候推荐使用第三种。


猜你喜欢

转载自blog.csdn.net/newactivity/article/details/81034634
今日推荐