growTransition没有动画效果

来源:7-8 动画Animation开发指南-AnimatedWidget与AnimatedBuilder-3【跟着做】

晓晓晓晓丶vv

2019-03-25

构造GrowTransition部分的代码如下:

class TransitionGroup extends StatelessWidget {
  TransitionGroup({this.child, this.animation});
  final Widget child;
  final Animation<double> animation;

  
  Widget build(BuildContext context) {
    return AnimatedBuilder(
      animation: animation,
      builder: (context, child) => Container(
            height: animation.value,
            width: animation.value,
            child: child,
          ),
      child: child,
    );
  }
}

其他都没怎么变动,但是没有动画效果,调用部分代码:


  Widget build(BuildContext context) {
    return TransitionGroup(
      animation: animation,
      child: LogoWidget(controller: controller),
    );
  }

其中LogoWidget中传入controller是为了点击图片能重置动画,对效果应该不影响,所以核心问题感觉应该是出在GrowTransition上。

写回答

1回答

晓晓晓晓丶vv

提问者

2019-03-25

找到原因了,`AnimatedBuilder`需要包裹在`Center`中才有效果,这是为什么?我把`Center`改成`Container`也不行,是不是只能在`Center`中?

1
2
晓晓晓晓丶vv
回复
CrazyCodeBoy
约束条件我可以理解成 需要一个容器裹着它吗? 然后不理解的就是 为什么有的容器能有约束左右 有的容器却没有
2019-03-27
共2条回复

Flutter从入门到进阶 实战携程网App 一网打尽核心技术

解锁Flutter开发新姿势,,系统掌握Flutter开发核心技术。

4788 学习 · 3270 问题

查看课程