flutter - 你如何摆脱下面的 NoSuchMethodError
问题描述
您好我正在尝试实现卡片翻转动画。根据以下代码,共有三张卡。我收到一个错误 NoSuchMethodError 在 null 上调用了方法“/”。Receiver:null 尝试调用:/(0.333333333)
编码
class _CardFlipperState extends State<CardFlipper> {
double scrollPercent;
Offset startDrag;
double startDragPercentScroll;
double finishScrollStart;
double finishScrollEnd;
AnimationController finishScrollController;
void _onHorizontalDragStart(DragStartDetails details) {
startDrag = details.globalPosition;
startDragPercentScroll = scrollPercent;
}
void _onHorizontalDragUpdate(DragUpdateDetails details) {
final currDrag = details.globalPosition;
final dragDistance = currDrag.dx - startDrag.dx;
final singleCardDragPercent = dragDistance / context.size.width;
final numCards = 3;
setState(() {
scrollPercent =
(startDragPercentScroll + (singleCardDragPercent / numCards))
.clamp(0.0, 1.0 - (1 / numCards));
});
}
void _onHorizontalDragEnd(DragEndDetails details) {
setState(() {
startDrag = null;
startDragPercentScroll = null;
});
}
List<Widget> _buildCards() {
return [
_buildCard(0, 3, scrollPercent),
_buildCard(1, 3, scrollPercent),
_buildCard(2, 3, scrollPercent),
];
}
Widget _buildCard(int cardIndex, int cardCount, double scrollPercent) {
final cardScrollPercent = scrollPercent / (1 / cardCount);
最后一行似乎是我无法弄清楚原因的问题。我是颤振新手
解决方案
scrollPercent
没有初始化,用一些东西初始化它。在最后一行 dart 最终试图评估null / 1 / 3
.
推荐阅读
- firebase - 如何在flutter中删除firestore中的多个文档?
- node.js - 使用 Multer 和 Node js 在 React 上的本地存储中未显示图像
- android - kotlin 中的烧瓶 + 改造无法使用 IP 地址访问 API 端点(无法连接到 /127.0.0.1:5000)
- python - AttributeError:无法获取属性“video_dataset”
- parsing - 使用 >>= 表示基本数字解析器
- python - 如何将 Django 应用模块中的 url 添加到我的主 urls.py 中?
- azure-functions - 未针对 Azure Functions 触发事件网格触发器
- ios - 如何在以编程方式添加的 UIView 内以编程方式创建 UITextView?
- python - 顺序应用数据集中较小批次的代码
- java - java.lang.IllegalArgumentException: bound 必须是正数(java.util.concurrent.ThreadLocalRandom.nextInt(Unknown Source) ~[?:1.8.0_301])