container
动画,如果我为value
或height
分配了width
。但是,我不想将任何height
或width
分配给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
不起作用。
在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添加到您的状态。