【问题标题】:Get download Progress in Flutter using event stream使用事件流在 Flutter 中获取下载进度
【发布时间】:2020-12-07 19:35:16
【问题描述】:

我正在尝试在 Flutter 应用程序中使用 CircularProgressIndicator 实现下载进度指示器。问题是最后一个开发人员已经使用 EventChannel 实现了下载功能,我需要有关如何获取下载进度数据以用作 CIrcularProgressIndicator 的值参数的帮助。任何帮助将不胜感激。

【问题讨论】:

    标签: android ios swift flutter dart


    【解决方案1】:

    1。创建频道:

    const eventChannel = EventChannel('name_of_channel');
    

    2。获取用于在此频道上接收事件的广播流:

    final progress$ = eventChannel.receiveBroadcastStream() as Stream<double>; // this stream emits values from 0.0 to 1.0.
    

    方法Stream receiveBroadcastStream ([dynamic arguments])也接受一个参数arguments,可以基于native代码传递。

    3。基于进度流构建 Widget:

    StreamBuilder<double>(
        initialData: 0,
        stream: progress$,
        builder: (context, snapshot) {
            final progress = snapshot.data;
            return CircularProgressIndicator(value: progress);
        }
    )
    

    希望这能解决您的问题。

    【讨论】:

      猜你喜欢
      • 2021-05-09
      • 2013-10-03
      • 2014-04-11
      • 2018-10-31
      • 2016-02-19
      • 1970-01-01
      • 1970-01-01
      • 2020-10-14
      • 2022-08-09
      相关资源
      最近更新 更多