如何在Android系统延迟后调用方法

如何在Android系统延迟后调用方法

我希望能够在指定的延迟之后调用以下方法。在目标C中有如下内容:

[self performSelector:@selector(DoSomething) withObject:nil afterDelay:5];

在带有java的Android系统中,是否存在类似于这种方法的方法?例如,我需要能够在5秒后调用一个方法。

public void DoSomething(){
     //do something here}


缥缈止盈
浏览 472回答 3
3回答

呼啦一阵风

科特林Handler().postDelayed({   //Do something after 100ms}, 100)爪哇final Handler handler = new Handler();handler.postDelayed(new Runnable() {   @Override   public void run() {     //Do something after 100ms   }}, 100);

小唯快跑啊

在我的案子里我不能用任何其他的答案。我使用了本机java计时器。new Timer().schedule(new TimerTask() {               @Override     public void run() {         // this code will be executed after 2 seconds            }}, 2000);

偶然的你

看起来,MacOSAPI允许当前线程继续运行,并将任务安排为异步运行。在Java中,等效函数由java.util.concurrent包裹。我不知道Android会有什么限制。private static final ScheduledExecutorService worker =    Executors.newSingleThreadScheduledExecutor();void someMethod() {   ⋮   Runnable task = new Runnable() {     public void run() {       /* Do something… */     }   };   worker.schedule(task, 5, TimeUnit.SECONDS);   ⋮}
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

Android