flutter - 如何在页面初始化时为容器设置动画;
问题描述
class _MaintenanceState extends State<Maintenance> {
下面的函数应该初始化动画
@override
void initState() {
super.initState();
_animate();
}
var loginWidth = 0.0;
Curve _curve = Curves.fastOutSlowIn;
_animate() {
setState(() {
loginWidth == 0.0 ? loginWidth = 130 : loginWidth = 0.0;
});
}
我尝试将动画容器的宽度放在其中,
initState
但它仍然没有动画。
AnimatedContainer(
duration: Duration(seconds: 1),
width: loginWidth,
height: 60.0,
decoration: BoxDecoration(
color: Colors.green[600],
borderRadius: BorderRadius.circular(20.0),
),
child: Padding(
padding: const EdgeInsets.all(8.0),
child: Row(
children: [
Text("Add \nProject"),
)),
Spacer(),
Image(
image: AssetImage(
"assets/images/add_icon.png",
),
),
],
),
),
),
我们欢迎所有的建议
解决方案
制作动画需要考虑几件事情。
- 如果要添加动画,请使用 AnimationController 跟踪动画的当前状态,设置动画的持续时间和其他几个属性。
- 如果您使用动画,则必须在您的班级中使用 SingleTickerProviderStateMixin 或 MultiTickerProviderStateMixin mixin。
我正在分享我的 GitHub 项目链接,其中我使用了一个简单的动画,您可以参考它。
推荐阅读
- asp.net-core - 具有现有身份数据库的 Asp.NET Core 和 EF Core
- mysql - MySQL自动将数字转换为字符串(错误)
- r - 使用 Shiny R 获取和显示文件名
- python - 使用 Python 作为 root 用户更新 UNIX 帐户密码的安全方法?
- vue.js - 如何将表单输入的当前值传递给 Vue 组件道具?
- amazon-web-services - AWS Lambda 函数无法发送电子邮件
- python - 在 Python 中估计相关性
- discord - Discord.js - 当有人获得特定角色时触发事件的任何方式?
- ios - iphone应用程序进入后台时注册回调的C API
- firebase - Flutter:数组的 Firebase 映射