flutter - 多次调用 AnimatedBuilder
问题描述
我有以下代码。newList
包含从中获取的数据snapshot
。
Widget _buildListChild(AsyncSnapshot<ModelHolidays> snapshot) {
var data = snapshot.data.d;
newList = json.decode(data.getholidaylist);
return ListView.builder(
padding: EdgeInsets.only(top: size.getSizePx(10)),
scrollDirection: Axis.vertical,
shrinkWrap: true,
physics: const BouncingScrollPhysics(),
itemCount: newList.length,
controller: scrollContainer,
itemBuilder: (context, index) {
final int count = 1;
final Animation<double> animation =
Tween<double>(begin: -1.0, end: 1.0).animate(
CurvedAnimation(
parent: holidayAnimationController,
curve: Interval((1 / count) * index * 2, 1.0,
curve: Curves.fastOutSlowIn),
),
);
holidayAnimationController.forward();
return AnimatedBuilder(
animation: holidayAnimationController,
builder: (BuildContext context, Widget child) {
print("######################");
print("Animated Builder");
print("######################");
return Container();
},
);
});
}
问题
newList
仅从 API 返回一条记录。不过AnimatedBuilder
好像有点问题。builder
, 中的打印语句AnimatedBuilder
实际上被打印了 70 多次。这是正常的吗?如果不是如何解决?我对颤振相当陌生。
谢谢
解决方案
推荐阅读
- java - 如何将方法的字符串参数更改为未知的类类型
- ios - 用于 iOS 应用的具有多个捆绑标识符的 URL 类型
- html - 旋转木马引导倒置
- ios - 1 px 边框 UIBezierPath(roundedRect:byRoundingCorners:)
- delphi - Delphi:线程的变量数组不执行数组的所有索引
- c++ - 将数组元素加一
- youtube-analytics-api - Youtube 分析 v2 API 密钥
- docker - docker中的vuejs拖放示例不起作用
- javascript - 键入 Promise generic 从调用到获取?
- magento - 为什么magento“继续”按钮不起作用?