我正在尝试在无状态小部件内的StreamBuilder中制作颜色过渡动画。我不知道如何执行此操作,因为有关该主题的所有示例和教程都使用有状态的小工具。
我考虑过使用FadeTransition Widget,但也许将状态存储在控制该视图的Bloc中。
请给我任何建议,谢谢。
答案 0 :(得分:2)
要在streambuilder中执行渐变过渡,很简单,只需使用名为AnimatedSwitcher的小部件即可:
@override
Widget build(BuildContext context) {
return StreamBuilder(
stream: FirebaseAuth.instance.onAuthStateChanged,
builder: (BuildContext context, snapshot) {
return AnimatedSwitcher(
duration: Duration(seconds: 1),
child: _getMainWidget(snapshot, context),
);
},
);
}
这里,当AnimatedSwitcher的子项更改时,我们使用AnimatedSwitcher为过渡设置动画,默认动画是淡入淡出动画,但是您可以通过将小部件传递TransitionBuilder作为争论