AnimatedContainer的大小不会设置动画,如果我不提供高度或宽度

问题描述 投票:0回答:1

container动画,如果我为valueheight分配了width。但是,我不想将任何heightwidth分配给container

现在,当我为其分配一个container时,会自动设置child的大小。如果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的宽度也改变。但是animation不起作用。

flutter flutter-animation
1个回答
0
投票

在AnimatedContainer中,您应该尝试AnimatedSize。

AnimatedSize(
        vsync: this,
        duration: Duration(milliseconds: 200),
        child: Container(
          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),
          ),
        ),
      ),

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

© www.soinside.com 2019 - 2024. All rights reserved.