我正在尝试使用state is XX
技术更改值,尽管flutter不会侦听流或可能不会触发重绘
class AnimatedBox extends StatelessWidget {
@override
Widget build(BuildContext context) {
final _animatedBoxBloc = BlocProvider.of<AnimatedboxBloc>(context);
return BlocBuilder(
bloc: _animatedBoxBloc,
builder: (context, state) {
return AnimatedContainer(
duration: Duration(milliseconds: 500),
curve: Curves.easeIn,
width: 200.0,
height: 200.0,
color:
state is YellowAnimatedboxState ? Colors.yellow :
state is BlueAnimatedboxState ? Colors.blue :
Colors.transparent,
);
}
);
}
}
我知道可以使用该方法,但是在构建器返回时应用该方法,即Blocbuilder .. if(状态为A)return,if(状态为B)return;然后,建造者返回并完全重新建造。 但是,我只需要更改一个值,我想通过Bloc模式更改它。 有可能吗?也许我做错了,或者更改后的值需要处于更改状态。 我的意思是写具有这些属性的集团: ...扩展