flutter - 如果我不给出高度或宽度,AnimatedContainer 大小不会产生动画

标签 flutter flutter-animation

如果我为高度宽度分配容器就会动画化。但是,我不想将任何 heightwidth 分配给 container

现在,当我为其分配时,容器大小会自动设置。如果 child 的大小发生变化,container 的大小也会发生变化。

我的代码如下所示

                      AnimatedContainer(
                        padding:
                            EdgeInsets.symmetric(horizontal: 20, vertical: 5),
                        decoration: BoxDecoration(
                          color: Colors.white,
                          borderRadius: BorderRadius.circular(20),
                        ),
                        child: Text(
                          '$someText',
                          style: TextStyle(
                              color: Colors.amber,
                              fontWeight: FontWeight.bold,
                              fontSize: 16),
                        ),
                      ),

如果$someText的值改变,container宽度也会改变。但动画不起作用。

最佳答案

您应该尝试使用 AnimatedSize,而不是 AnimatedContainer。

Container(
    padding: EdgeInsets.symmetric(horizontal: 20, vertical: 5),
    decoration: BoxDecoration(
      color: Colors.white,
      borderRadius: BorderRadius.circular(20),
    ),
    child: AnimatedSize(
      vsync: this,
      duration: Duration(milliseconds: 200),
      child: Text(
        'Text',
        style: TextStyle(
            color: Colors.amber, fontWeight: FontWeight.bold, fontSize: 16),
      ),
    ),
  ),

此外,您还必须为此将 TickerProviderStateMixin 添加到您的状态。

关于flutter - 如果我不给出高度或宽度,AnimatedContainer 大小不会产生动画,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/59902050/

相关文章:

flutter - 如何在 Flutter 中忽略某个 GestureDetector 小部件的触摸并检测外部触摸?

flutter - 可重新排序列表中的弹出菜单不合适

flutter - 我可以在AnimationStatus.completed之后再次转发相同的animationController吗

flutter - 将默认构建目标从 flutter for web 更改为 flutter for Android

firebase - 使用 Flutter 向 Cloud Firestore 添加对象

flutter - PageRouteBuilder的pageBuilder和transitionsBuilder typedef参数的区别

flutter - 在 flutter 应用程序的每个 View 的底部显示音乐播放器

dart - 每 5 分钟或定期刷新 Flutter Text 小部件内容

html - 如何使用 Flutter Mailer Package 发送复杂的邮件

flutter - 在 Android 中更改 Flutter 的表情符号字体