• 许童童
    2019-08-17
    1.第一个child会被用于参数传入builder函数,可以将动画与组件渲染代码解耦。
    2.可以正常执行,问题就是初始状态就要跟随动画。

    作者回复: 赞

     3
     4
  • 和小胖
    2019-09-25
    关于作业题,找到了源代码注释,哈哈哈。

    /// If the pre-built subtree is passed as the [child] parameter, the
    /// [AnimatedBuilder] will pass it back to the [builder] function so that it
    /// can be incorporated into the build.
    ///
    /// Using this pre-built child is entirely optional, but can improve
    /// performance significantly in some cases and is therefore a good practice.
    /// can be incorporated into the build.
    ///
    /// Using this pre-built child is entirely optional, but can improve
    /// performance significantly in some cases and is therefore a good practice.
    展开

    作者回复: 赞

    
     2
  • 高超
    2019-09-04
    AnimatedBulder 其实就是封装了下 AnimatedWdiget,在 AnimatedBulder 内部调用了 builder 函数,构建 widget 样式

    这样的好处就是给真实要渲染的widget上加了一层 Container,所有的动画都是在那个 Container 上完成。

    回答问题:
    1. 为了渲染和动画分离
    2. 可以的就是渲染和动画又揉一起了
    展开

    作者回复: 赞

    
     1
  • 亡命之徒
    2019-08-19
    老师有没有遇到这个问题,Widget myFormWidget(BuildContext context){在这里吗创建一个form组件}
    ,class BodyWidget extends StatelessWidget {
      @override
      Widget build(BuildContext context) {
        // TODO: implement build
        return Column(
          mainAxisAlignment: MainAxisAlignment.start,
          children: <Widget>[
            // textFieldWidget(context),
            myFormWidget(context),
          ],
        );
      }
    然后通过这种方式调用,键盘刚获取焦点立马就是去焦点了,无法输入,这是什么原因
    展开

    作者回复: 1.文本输入需要用StatefulWidget
    2.文本输入控制使用TextEditingController

    
     1
  • cv0cv0
    2019-12-21
    Hero 动画不够完美。
    
    
  • 黄明星~~
    2019-10-14
    用AnimatedWidget的方式,如果要传入多个Animation对象,listenable应该如何取呢?

    作者回复: 如果Animation是相同的,再包一层就可以了呀;如果Animation不同,那就分别做好了,跟普通widget没啥区别

    
    
  • 和小胖
    2019-09-25
    在写代码时候需要注意得地方,controller.repeat(reverse: true) 让动画重复执行的一定要写在动画开始 controller.forward() 之后,否则应该会不生效,这是我遇到的情况。

    作者回复: repeat和forward只需要一个就可以了,不用两个都写

    
    
  • 宋世通
    2019-09-04
    看了下关于child的注释,感觉1,2是一个问题
    1 child是可选的,作为builder的参数给开发者使用,在某些情况下可以提高性能,因此最好要传入child
    2 通过child和builder的方式,动画时不必每次重新构建 child,这样限定了重建rebuild的范围,在builder中的widget才会重建,这可能是提高性能的一部分原因
    3 如果builder返回的子树不依赖动画,更好的方式是build构建一次,也就是将子树作为child传入

    作者回复: 赞

     1
    
  • ptlCoder
    2019-08-28
    删除了就跟AnimatedWidget没有什么区别了 达不到渲染和动画隔离

    作者回复: 赞

    
    
我们在线,来聊聊吧