借用的例子search_widget你需要
dataList在这样的小部件:
SearchWidget<LeaderBoard>( dataList: list, textFieldBuilder: (TextEditingController controller, FocusNode focusNode) { return MyTextField(controller, focusNode); }, )
当然,你可以转换
Future<List>成
List像其他答案建议。但是您 将无法 做,
dataList: await_sqliteCall();因为
build方法被设计为纯同步的。
未来完成时,您将必须返回诸如进度指示器之类的东西。为此,您可以使用
FutureBuilder:
FutureBuilder<List<Leaderboard>>( future: _sqliteCall(), builder: (context, snapshot) { if (snapshot.hasData) { return SearchWidget<LeaderBoard>( dataList: snapshot.data, textFieldBuilder: (TextEditingController controller, FocusNode focusNode) { return MyTextField(controller, focusNode); }, ) } return CircularProgressIndicator(); }),
当然,也可以使用来完成此 *** 作
StatefulWidget,您可以查看本文以获取有关该问题的详细说明。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)