6

我正在使用 Java SDK 在 HarmonyOS 中创建一个自定义组件,我必须在组件实例延迟一段时间后执行一些任务。

在 Android 中,我们在View类中有postDelayed(Runnable action, long delayMillis)方法。所以我们可以实现上述要求如下

view.postDelayed(runnable, 100);

但是,在 HMOS java SDK 中,我看到组件类中没有任何可用于延迟的 api 。

所以,我的问题是

Harmonyos 中 view.postDelayed(Runnable action, long delayMillis) 的等价物是什么?

4

2 回答 2

2

目前HarmonyOS没有提供View.postDelayed(..)的确切替代方案,您可以使用ohos.eventhandler.EventHandler API实现类似的 UI 发布功能,示例用法如下

 EventHanlder eventhandler = new EventHandlder(EventRunner.getMainEventRunner());
 eventhandler.postTask(runnable, timeInMillis);
于 2021-09-06T06:17:17.320 回答
2

您还可以参考以下代码:

getUITaskDispatcher().delayDispatch(new Runnable() {

    @Override

    public void run() {

        // Here's the task you want to delay.

    }

}, 100);
于 2021-09-08T08:08:03.610 回答