Android 如何在Flatter中设置更改方法时禁用ui构建
我的应用程序有一个图形视图,每当我的功能运行时,它也在重建 如何控制我的用户界面Android 如何在Flatter中设置更改方法时禁用ui构建,android,ios,flutter,dart,flutter-layout,Android,Ios,Flutter,Dart,Flutter Layout,我的应用程序有一个图形视图,每当我的功能运行时,它也在重建 如何控制我的用户界面 var response = await getdashboarddata(tokenkey); setState(() { }); 使用FutureBuilder Widget projectWidget() { return FutureBuilder( builder: (context, projectSnap) { if (projectSnap.connectionSta
var response = await getdashboarddata(tokenkey);
setState(() {
});
使用
FutureBuilder
Widget projectWidget() {
return FutureBuilder(
builder: (context, projectSnap) {
if (projectSnap.connectionState == ConnectionState.none &&
projectSnap.hasData == null) {
//print('project snapshot data is: ${projectSnap.data}');
return Container();
}
return ListView.builder(
itemCount: projectSnap.data.length,
itemBuilder: (context, index) {
ProjectModel project = projectSnap.data[index];
return Column(
children: <Widget>[
// Widget to display the list of project
],
);
},
);
},
future: getdashboarddata(tokenkey),
);
}
@override
Widget build(BuildContext context) {
return Scaffold(
appBar: AppBar(
title: Text('ProjectList'),
),
body: projectWidget(),
);
}
Widget项目Widget(){
回归未来建设者(
生成器:(上下文,projectSnap){
如果(projectSnap.connectionState==connectionState.none&&
projectSnap.hasData==null){
//打印('项目快照数据为:${projectSnap.data}');
返回容器();
}
返回ListView.builder(
itemCount:projectSnap.data.length,
itemBuilder:(上下文,索引){
ProjectModel project=projectSnap.data[index];
返回列(
儿童:[
//用于显示项目列表的小部件
],
);
},
);
},
未来:getdashboarddata(令牌密钥),
);
}
@凌驾
小部件构建(构建上下文){
返回脚手架(
appBar:appBar(
标题:文本(“项目列表”),
),
正文:projectWidget(),
);
}