首页 > 解决方案 > Android 应用程序延迟执行不起作用

问题描述

我试图让我的 android 应用程序延迟 2 秒。

我使用了处理程序,但问题是处理程序没有停止剩余的代码执行,所以我像下面这样使用但它不起作用

final Handler handler = new Handler();
public int delay=0;

handler.postDelayed(new Runnable() {
    @Override
    public void run() {
        // Do something after 2s
        delay=delay+1;
    }
}, 2000);

while(delay==0){
}

标签: javaandroidmobiledelayhandler

解决方案


好的,所以handler.postDelayed(Runnable, 2000)会将方法延迟Runnable2 秒。这将在不阻止应用程序的主线程运行 2 秒的情况下完成。

但是要延迟整个应用程序,您将需要阻塞主线程。因此,您将需要执行以下操作:

Thread.sleep(2000)

这将阻止主线程运行 2 秒,从而阻止整个应用程序运行。


推荐阅读