【发布时间】:2021-11-05 12:16:05
【问题描述】:
当我单击一个按钮时,应在 2 秒后以编程方式单击另一个按钮。
Helper.setTimeout(() -> {
_view.findViewById(R.id.turbineStandBy).performClick();
}, 2000);
当我运行这段代码时,我得到了这个异常:
只有创建视图层次结构的原始线程才能触及它的 意见。
public static void setTimeout(Runnable runnable, int delay){
new Thread(() -> {
try {
Thread.sleep(delay);
runnable.run();
}
catch (Exception e){
System.err.println(e);
}
}).start();
}
我认为我必须重写 run() 方法,但如何在我的 setTimeout() 方法中做到这一点?
【问题讨论】:
-
这个 Helper.setTimeout 到底是什么?
-
@hata
Helper是我的方法setTimeout()的类。setTimeout()的代码你在我的帖子里看到。 -
这是您的原始方法。所以你可以重新定义它而不是覆盖
run()方法。