【问题标题】:In Flutter,How to automate button without clicking after a period of time?在Flutter中,如何在一段时间后不点击自动按钮?
【发布时间】:2021-03-19 08:27:51
【问题描述】:

这个想法是通过在每个时间段后向特定的手机号码发送短信来检查短信网关是否正常。如果我得到回应,那就没问题了。

问题是:

我无法自动化我必须按下的按钮。我希望在向网关发送请求的特定时间段后自动单击按钮。

因为我总是在一段时间后无法点击按钮。

【问题讨论】:

    标签: flutter dart flutter-layout flutter-dependencies


    【解决方案1】:

    您可以使用 Future.delayed 或 Timer 来执行此操作。根据您的代码,您可能需要在后台执行此操作。 various platform-specific solutions 用于后台代码执行,我将不再赘述。

    现在,解决方法:

    Future.delayed 示例

    Future _delayedFuture = Future.delayed(
      const Duration(milliseconds: 500),
      () {
        // Call some function after delay of 500ms
      },
    );
    

    Future.delayed 不能取消,而 timer 可以。

    定时器示例:

    Timer _timer = Timer(
      const Duration(milliseconds: 500),
      () {
        // Call some function after delay of 500ms
      },
    );
    

    如果要取消定时器,请使用_timer.cancel()

    您也可以使用Timer.periodic();定期运行计时器

    【讨论】:

    • 我能得到更多详细的解释,因为我对此非常陌生。假设我有一个名为 callService() 的函数,它从服务器返回响应的数据。现在我希望每 60 秒后定期调用此函数。
    • Timer _timer = Timer.periodic( const Duration(seconds: 60), () { callService(); }, );
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2020-03-16
    • 1970-01-01
    • 2022-01-03
    相关资源
    最近更新 更多