Android 在flatter ListView.builder中,我得到了空值
我创建了一个名为“记录”的映射,当显示在“保存”按钮上时,该映射的键来自用户,值来自我代码中的时间计数器。 但问题是,当我创建ListView.builder将此映射索引导出到卡片时,它在每个卡片索引中为我提供空值!!! 我如何显示真实值而不是Null 这是我的密码:Android 在flatter ListView.builder中,我得到了空值,android,flutter,listview,dart,Android,Flutter,Listview,Dart,我创建了一个名为“记录”的映射,当显示在“保存”按钮上时,该映射的键来自用户,值来自我代码中的时间计数器。 但问题是,当我创建ListView.builder将此映射索引导出到卡片时,它在每个卡片索引中为我提供空值!!! 我如何显示真实值而不是Null 这是我的密码: var _item; List listCount = []; Map<String, dynamic> records = {}; String name; createAlertDialog(b
var _item;
List listCount = [];
Map<String, dynamic> records = {};
String name;
createAlertDialog(buildContext, context) {
TextEditingController controller;
return showDialog(
context: context,
// barrierDismissible: false,
builder: (context) {
return AlertDialog(
title: Text(
'Type record name',
textAlign: TextAlign.center,
style: TextStyle(fontSize: 18.0),
),
content: TextField(
controller: controller,
onChanged: (value) {
name = value;
}),
actions: [
MaterialButton(
elevation: 5.0,
child: Text('Save'),
onPressed: () {
listCount.add(_item);
print(_item);
records[name] = _item;
print(records);
Navigator.pop(context);
},
),
MaterialButton(
elevation: 5.0,
child: Text('Cancel'),
onPressed: () {
Navigator.pop(context);
},
),
],
);
},
);
}
链接中的图像是我的应用程序的屏幕截图
查看初始为空的_item变量。您没有给它赋值。请检查您的密码。您正在为记录分配空值,因为_项未被赋予任何值
onChanged: (value){
_item = value;
}
您没有给_item变量赋值,我假设您想在onChanged事件中赋值,如下所示:
onChanged: (value) {
_item = value;
}
或者您想改为将名称添加到列表中?如果我理解正确,您已根据Save button onPressed事件中的name变量将项目值存储到记录中。但您是通过ListView索引值获取记录的。因此,在基于该索引的记录集合中找不到任何记录。所以它返回空值
提供索引以将项目存储在“保存”按钮中,而不是名称。或者根据ListView builder中的名称而不是索引来检查记录。实际上,我给出了值,并在控制台中打印它们,但当尝试在应用程序卡中显示时,它会出错并显示为空!!您能否发布显示记录列表的完整代码,以及您将值分配给变量_项的位置。此外,您能否打印列表计数的最后一个值以确保它不会返回null?我已经编辑了我的帖子,在代码中我显示了变量_项从何处获取其值。如果有必要,我可以发布整个代码?在同一页中大约278行实际上我给出了值,我在控制台中打印它们,但是当试图在应用程序卡中显示它时,它会出错并显示为空!!我试过这个,但没有任何好处。。
onChanged: (value){
_item = value;
}
onChanged: (value) {
_item = value;
}