【发布时间】:2019-01-20 02:27:59
【问题描述】:
删除其中一项后,我无法更新我的债务清单。
我有一个带有底部导航栏的主屏幕,有两个选项。检查所有项目的列表或一般信息。索引零是列表,因此默认绘制。
https://i.imgur.com/6qOVPPE.png
在我的 main_screen.dart 中,我有一个从 SQLite 数据库获得的 List debtList 女巫。我将此列表传递给每个构造函数。
Widget _getTab(int currentIndex) {
switch (currentIndex) {
case 0:
return DebtList(debtList);
case 1:
return GeneralInfo(debtList);
break;
default:
return DebtList(debtList);
}
}
现在我点击一个项目可以访问该项目的信息。
https://i.imgur.com/ikl4cEI.png
当我单击删除时,它可以工作。该项目不再在数据库中,但列表未更新。
dbHelper.deleteDebt(widget.debt.id);
Navigator.pop(context, **true**);
我已经尝试返回 true,所以我可以像这样检查它:
bool result = await Navigator.push(context, MaterialPageRoute(builder: (context) => DebtDetail(debt)));
if (result != null && result == true) {
...
但是方法 updateList() 在我的 main_screen.dart 类中,而不是在我的 debt_list.dart 类中。
我做错了什么?我无法更新 debt_list 类中的列表,因为它是最终的。
widget.debtList = debtList; //cant do this
我应该改变什么?
感谢您的宝贵时间!
【问题讨论】:
-
你的小部件代码和状态变量是什么?