flutter - 如何等待功能完成?

标签 flutter dart flutter-layout flutter-dependencies

我有两个名为getAllContacts()的函数,这些函数将从mobile和upDateAllContacts()获取所有联系人,后者使用联系人号码创建小部件,并将其附加到名为registerdUsers = []的列表中,并在列中使用registedUser小部件。
问题是除非我导航到另一个屏幕然后返回,否则小部件不可见。

List registeredUsers =  <Widget>[];
class  ...{
   ...
     @override
     initState() {
     getAllContacts() //It greps all the contacts from mobile
     upDateAllContacts()//contacts to create widgets which goes in to registeredUsers list
    super.initState();
  }

  @override
  Widget build(BuildContext context) {
   ...
     column { 
       children :registeredUsers,
     }

   ...
  }



}

最佳答案

使您的函数getAllContacts返回Future并使用 FutureBuilder 呈现小部件。每当Future的状态更改或发生错误时,FutureBuilder都会将其称为 build 回调,该回调返回适当的小部件。

该代码将如下所示:

FutureBuilder(
    // Assuming loadAllContacts returns Future<Contacts>
    future: loadAllContacts(),

    // This callback will be called whenever future's state changes
    builder: (BuildContext context, AsyncSnapshot<Contacts> snapshot) {
        if (snapshot.hasData) {
            return ListView(…);
        } else if (snapshot.hasError) {
            return Text('Failed to load the contacts');
        } else {
            return Text('Loading the contacts');
        }
    },
),

关于flutter - 如何等待功能完成?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/62231894/

相关文章:

android - 如何在 flutter 中仅对一个小部件使用 setState 方法?

flutter - 我需要在 flutter 中更改底部菜单的颜色

flutter - 在以下情况下使应用栏透明

flutter - 如何从另一个类中定义的平面按钮的onPressed调用主类中定义的方法(('_MyHomePageState()')?

flutter - Flutter 中的 FloatingActionButton onLongPress 监听器

flutter - Flutter文本字段onChanged-检测最后键入的文本是否是标记句柄 '@mention'

Flutter,如何在侧面添加选项卡按钮?

android - Flutter dart 调试器断点停止工作

flutter - 是否可以在 flutter 中的 TextField 上使用渐变?

flutter - Dart:获取列表 2 中元素的索引(列表 1 中的元素)