![](/img/trans.png)
[英]How to Overlay and Center Circular Progress Indicator with FutureBuilder Flutter
[英]how to return single circular Indicator for 2 futurebuilder for the same screen in flutter?
我有一個這樣的小部件,
import 'package:flutter/material.dart';
class TestWidget extends StatelessWidget {
const TestWidget({ Key? key }) : super(key: key);
@override
Widget build(BuildContext context) {
return Scaffold(
body: Column(
children: [
// for first data👇
FutureBuilder(
future: firstMethod(),
builder: (BuildContext context, AsyncSnapshot snapshot) {
return Text(firstData);
},
),
// for second data👇
FutureBuilder(
future: secondMethod(),
builder: (BuildContext context, AsyncSnapshot snapshot) {
return Text(SecondData);
},
),
],
),
);
}
}
現在我想要的是我想在整個屏幕上只顯示一個CircularProgessIndicator
直到未來的構建器都有一些數據。
最好的方法是什么?
您可以使用一個未來的構建器並等待兩種方法完成
body : FutureBuilder(
future: _loadData(),
builder: (BuildContext context, AsyncSnapshot snapshot) {
if(snapshot.connectionState == ConnectionState.done){
return Column(
children: [
Text(firstData),
Text(SecondData)
],
);
}
return yourLoadingProgressWidget;
},
)
_loadData
將是
_loadData()async{
await firstMethod();
await secondMethod();
}//wait for both function to be completed
您可以使用Future.wait
它將等待多個期貨完成。
看看我創建的這個DartPad 。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.