Android 在flatter ListView.builder中,我得到了空值

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

我创建了一个名为“记录”的映射,当显示在“保存”按钮上时,该映射的键来自用户,值来自我代码中的时间计数器。 但问题是,当我创建ListView.builder将此映射索引导出到卡片时,它在每个卡片索引中为我提供空值!!! 我如何显示真实值而不是Null

这是我的密码:

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;
              }