Android程序中如何实现延时操作

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了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方法
参考技术A 使用runable,和handler

android 开发中如何实现让程序执行一条语句后延时一段时间后再执行下面的语句

现在的编程思想还是停留在单片机c开发上,用了forint i=0;i<1000;i++发现在android开发上没有延时效果,急求一个简单的延时,我是初学者希望给个实例,答案满意后加分哦

方案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后执行代码

;
参考技术A 你这方法完全是利用了单片机处理速度慢才会有伪延时效果,实际上那时机器正在运算,放在好点的机器上运算速度快了当然就没延时效果了。正统的延时还是要用到楼上说的线程,安卓还有一个timer类也可以用于定时。 参考技术B 1、用线程,sleep一定时间后,再发送message返回,主线程接收到返回消息再继续执行

2、sleep(1000);
参考技术C try
Thread.currentThread().sleep(2000);
catch (InterruptedException e)
e.printStackTrace();
参考技术D 有好几种实现方法
你可以用线程
也可以用定时器
android的线程比java多了一个异步线程

以上是关于Android程序中如何实现延时操作的主要内容,如果未能解决你的问题,请参考以下文章

Android中实现延时执行操作的几种方法

Android:常用设定延时的方法

Android中实现延时执行操作的几种方法

Android 延时执行某个任务

android postDelayed实现

Android 实现页面的延时跳转