【问题标题】:Flutter Circular progress indicator not working properly on androidFlutter 循环进度指示器在 android 上无法正常工作
【发布时间】:2020-08-13 16:10:17
【问题描述】:

我正在用颤振构建一个应用程序,但我在 android 上加载时遇到了一些问题:我有几个 futureBuilder,使用 CircularProgressIndicator() 而且,虽然在 IOS 上它们都可以正常工作,但在 android 上我只显示了一个点而不是加载符号。

这是示例代码,下面是IOS和android的两个屏幕。

FutureBuilder(
        future: myFuture,
        builder: (BuildContext context, AsyncSnapshot<VtsAccount> snapshot) {
          if (snapshot.connectionState == ConnectionState.waiting) {
            return Center(child: CircularProgressIndicator());
          } else {
            if (snapshot.hasError)
              return Center(child: Text('Error');
            else {
              return RichText(
                textAlign: TextAlign.center,
                text: TextSpan(
                    text: snapshot.data.myField()),
              );
            }
          }
        });

提前感谢您的帮助。

【问题讨论】:

  • 如果我用作 Future: Future.delayed(const Duration(seconds : 5)) 它也适用于 android,但我需要调用一个引发此问题的外部库
  • 外部库?哇。尝试这个。删除您添加的 Future.delayed 代码。以“return await .....”结束 FutureBuilder 使用的异步方法
  • 你找到解决这个“点效应”的方法了吗?我有同样的问题。只有当我热重载/重启时它才会消失。

标签: android user-interface flutter


【解决方案1】:

我使用下面的代码在 CircularProgressIndicator 上获得了相同的“点效果”:

return Container( width:1,height: 1,child:Center(child:CircularProgressIndicator()));

我确定问题是您没有为 CircularProgressIndicator 小部件的父小部件提供足够的空间

(我不知道为什么在 IOS 中行为不同)

【讨论】:

  • 我试图给父母更多的空间,但这并没有改变行为
  • 这对父小部件大小没有任何作用,它使用影响指标的未来构建器的实现
猜你喜欢
  • 2013-10-01
  • 1970-01-01
  • 2021-09-14
  • 2019-01-01
  • 1970-01-01
  • 2014-12-02
相关资源
最近更新 更多