仅在构建futurebuilder时显示bottomNavigationBar



我有一个底部导航栏包含一个按钮。我想只在futurebuilder中有数据并且连接完成时才显示按钮。

到目前为止,我已经介绍了一个名为loadButton的布尔变量,它最初被设置为false。然后在我未来的构建器中,在connectionSate = done的if条件下,我将loadButton设置为true。然后我用这个布尔变量控制底部导航栏的可见性。 到目前为止,这个按钮还不可见。我只看到一个连续加载旋转器。如何更改布尔值?代码如下:

FutureBuilder( 
future: _someFuture, 
builder: (ctx,dataSnapshot){ 
if(dataSnapshot.connectionState == ConnectionState.done) 
loadButton = true; 
}), 
bottomNavigationBar: loadButton?MaterialButton(
onPressed: () => {},
child: Text(_register ? 'REGISTER' : 'LOGIN'),
):Center(child:Loading())

转过来,把bottomNavigationBar变成FutureBuilder:

bottomNavigationBar: FutureBuilder(
future: _someFuture,
builder: (ctx, snapshot) {
if (dataSnapshot.connectionState == ConnectionState.done) {
return Center(child: Loading());
} else {
return MaterialButton(
onPressed: () => {},
child: Text(_register ? 'REGISTER' : 'LOGIN'));
}
}),

最新更新