我有一个带有数百行数据表的主页,需要一段时间才能加载。每当我对数据表进行排序时,HomePageState都会重新加载-在构建时,整个页面冻结一两秒钟。
是否可以添加进度指示器,在后台构建新状态并在构建完成后显示它?
换句话说,我希望在用户对表格进行排序时发生这种情况:
答案 0 :(得分:1)
希望您使用FutureBuilder
来获取数据。
FutureBuilder(
future: fetchData(),
builder: (_, dataSnapshot) {
if (dataSnapshot.connectionState == ConnectionState.waiting) {
return Center(child: CircularProgressIndicator());
} else {
return Container(), // Your widgets code
);
}
},
)
在else块内获取dataSnapshot.data
之类的数据-使用它来呈现小部件。