A video is better that a thousand of words
信息卡建立后,我希望进行淡入淡出过渡 这就是我所做的:
Builder(
builder:(context){
return _currentItem == 1 ? FadeTransition(
opacity: fadeAnimation,
child: new HotelAdditionnalInfo(),
)
:
FadeTransition(
opacity: fadeAnimation,
child: new FlightAdditionnalInfo(),
)
;
}
)
以及动画参数:
class _BookingsState extends State<Bookings> with SingleTickerProviderStateMixin {
int _currentItem = 0;
AnimationController animationController;
Animation fadeAnimation;
@override
void initState() {
animationController = AnimationController(vsync: this, duration: Duration(milliseconds: 1000));
fadeAnimation = Tween(begin: 0.0, end: 1.0).animate(animationController);
animationController.forward();
super.initState();
}
动画不显示。我可能做错了什么,但我找不到:/
答案 0 :(得分:0)
好吧,我找到了一个可以完成这项工作的小部件:
AnimatedCrossFade(
duration: const Duration(milliseconds: 500),
firstChild: new HotelAdditionnalInfo(),
secondChild: new FlightAdditionnalInfo(),
crossFadeState: _currentItem == 1 ? CrossFadeState.showFirst : CrossFadeState.showSecond,
)
但是它消除了我内容的阴影。
有人知道这个小部件是否需要一种容器吗?