flutter - 如何在 listview builder 中计算列表的总和?
问题描述
我想计算列表的总价格,我该怎么做。
输入价格的代码。
Container(
width: 60.0,
alignment: Alignment.centerRight,
decoration: BoxDecoration(
color: Colors.white,
borderRadius: BorderRadius.circular(10.0)
),
child: Padding(
padding: const EdgeInsets.only(top: 10.0, left: 16.0),
child: TextFormField(
maxLength: 3,
controller: _amountController,
keyboardType: TextInputType.numberWithOptions(),
decoration: InputDecoration(
counter: Offstage(),
border: InputBorder.none,
),
),
),
如果我使用 .fold 那么我得到 _addfromInteger 错误..
Container(
height: 40.0,
width: 100.0,
decoration: BoxDecoration(
color: Colors.white,
borderRadius: BorderRadius.circular(10.0)
),
child: Center(
child: Text(listdynamicWidget.fold(0, (prev, el) => prev + el.productAmount).toString()),
)
),
],
),
解决方案
您应该在 StatefulWidget 使用 TextField 和 onChanged,如下所示。
TextField(
onChanged: (inputText) {
if (inputText.runtimeType == int) {
// calculate method
setState((){});
}
},
),
推荐阅读
- sql - 如何根据选择返回列或将其添加为存储过程中的参数
- ios - iOS 模拟器的屏幕录像去哪了?
- windows - 检测 Rust 可执行文件以进行分析
- java - 为什么在尝试对整个 Spring Batch Job 进行单元测试时出现此错误?没有可用的“org.springframework.batch.core.Job”类型的合格bean
- heroku - 推送 Heroku 后组件不工作
- redis - 在为每个客户端创建一个新流时,redis 流是否可以扩展
- javascript - 如何制作“双向绑定”Vue
- php - 使用 AJAX 在 Woocommerce 结帐页面上应用优惠券代码
- typescript - typescript-eslint/pre-commit hook (monorepo):解析错误:“parserOptions.project”已为@typescript-eslint/parser 设置
- python - Python 中的 scipy.signal.lfilter