flutter - 构建颤动后如何设置动画?
问题描述
我必须将我的小部件在堆栈中移动(屏幕大小 - 我可以从键获得的小部件 A 的大小)。这两个值仅在构建后可用,但据我所知,我应该在 initState 中初始化我的动画。构建完成后有没有办法初始化我的补间动画?
解决方案
我明白了,你需要做你的手术after build
。假设您已经实现了动画方法,我可以看到您在initState()
方法中调用了它。因此,您可以执行以下操作:
您可以使用Flutter After Layout Package,它在布局完成后仅执行一次功能。
或者
查看可以使用它来实现相同目的的代码:
@override
void initState() {
super.initState();
WidgetsBinding.instance.addPostFrameCallback((_) => _myFunction(context));
}
您可以使用它作为替代方案,因为WidgetBinding
在您的initState()
:
// import this to implement the below code
import 'package:flutter/scheduler.dart';
SchedulerBinding.instance.addPostFrameCallback((_) => _myFunction(context));
推荐阅读
- excel - 合并两个“Private Sub Worksheet_Change(ByVal Target As Range)”
- java - 如何运行一个简单的 for 循环而不是重复的 if 语句?
- python - 具有不平衡类(正数是少数类)、低精度和奇怪的分数分布的随机森林
- android - Android 模拟器网络问题
- macos - 在 sed 中拆分第二次出现的骆驼样式文本模式
- java - 如何使用 Selenium 获取 Chrome 浏览器控制台日志 [INFO] 条目
- c# - 有没有办法为我无法编写代码的类进行用户定义的转换?
- sql - 从非常大的表中删除重复的子集
- python-3.x - 如何修复 TypeError:'int' 对象不可迭代
- python - Google Drive API:避免手动身份验证