- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
Expanded(
flex: 1,
child: Padding(
padding: const EdgeInsets.only(bottom: 3.0, right: 1),
child: AnimatedContainer(
duration: Duration(seconds: 1),
height: voteCountList[0],
decoration: BoxDecoration(
color: ColorChooser.graphColors[int.parse(optionsList[0]['color'])],
borderRadius: BorderRadius.all(Radius.circular(2))
),
),
),
),
如我的代码片段所示,动画容器的高度为 voteCountList[0],如果值已更新,则此操作正常。但是,当最初构建小部件时,没有动画,并且容器的高度立即 = voteCountList[0]。我想实现 AnimatedContainer,以便看到容器的高度从 0 到 voteCountList[0]。这个高度需要在构建时设置动画。
最佳答案
如果您不想使用 AnimatedBuilder 或创建您自己的动画 Controller ,一种使用 Animatedcontainer 的方法是
class MyWidget extends StatelessWidget {
Future<double> get _height => Future<double>.value(200);
@override
Widget build(BuildContext context) {
return Padding(
padding: const EdgeInsets.only(bottom: 3.0, right: 1),
child: FutureBuilder<double>(
future: _height,
initialData: 0.0,
builder: (context, snapshot) {
return AnimatedContainer(
duration: Duration(seconds: 1),
width: 200,
height: snapshot.data, //voteCountList[0],
decoration: BoxDecoration(
color: Colors.red,
borderRadius: BorderRadius.all(Radius.circular(2))),
);
}
)
);
}
}
你开始一个初始值为 0.0 的 future,在 tick 之后 future 解析(这是你已经拥有的值,你只是将它转换为 future 让他认为它会在 tick 中准备好)和动画将从 0 开始到解析的 future voteCountList[0]
关于flutter - 如何在初始小部件构建后使 AnimatedContainer 更改高度,而不是在单击按钮时更改高度,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/62219322/
Example 使用 CupertinoPicker,我希望它使用 AnimatedContainer 以动画形式显示在文本输入下方的 View 中,但是当它变得可见时,我收到溢出警告。据我所知,您无
我正在尝试制作一个类,如果您单击一个按钮,它会变大,然后再次单击会缩小。但是动画不工作 这是我的 import 'package:flutter/material.dart'; import 'pac
我想为列表中两个项目之间的间隙设置动画。我想过使用高度最初为零的 AminatedContainer,但我不熟悉如何进行这项工作。我现在的代码是: new AnimatedContainer(
基本上我想在 2 个值之间设置 AnimatedContainer 的高度动画。但这就是问题所在。当我的状态为 1 时,我知道高度,因此我可以设置动画,但是当我的状态为 0 时,我希望动画容器扩展到可
因此,我正在做一些事情,我想列出这些“胶囊”(圆角矩形容器)的列表。当用户点击其中任意一个时,它将扩展到全屏,而其余的则停留在较低的层上,并且不执行任何操作。 我正在使用AnimatedContain
我找不到两者之间的区别,以及为什么您想要使用其中一个。 在我看来,他们俩几乎做了同样的事情。 为什么以及在哪里会使用其中一个? 最佳答案 AnimatedContainer 用于快速完成任务且用途简单
假设我们有 Column 的 3 个 child : Flexible( flex:1, child: Container( color: Colors.red, ),
我有一个带有子控件的简单AnimatedWidget。 AnimatedContainer( duration: Duration(milliseconds: 2000), curve:
Expanded( flex: 1, child: Padding( padding:
Expanded( flex: 1, child: Padding( padding:
我希望为 AnimatedContainer 和 ClipPath 在 y 轴上移动设置动画。 这是我当前的代码: class Clip extends StatelessWidget { fin
我希望使用 transform 为容器的比例设置动画。 AnimatedContainer 的属性(property);但是,比例尺并没有过渡,而是直接从头跳到尾。 代码片段: var contain
我是一名优秀的程序员,十分优秀!