首页 > 解决方案 > 根据日期显示列表项 - Flutter

问题描述

当每个列表项的日期等于今天的日期时,我想要一个列表。我个人在未来的 builder 中的 listview.builder 中编写了这段代码:

          itemBuilder: (context, index) {
            var now = DateTime.now();
            var nowFormated = DateFormat.MMMd().format(now);
            DateTime time = DateTime.parse(snapshot.data[index].date);
            var databaseFormated = DateFormat.MMMd().add_Hm().format(time);
            var checkerFormated = DateFormat.MMMd().format(time);
            if (checkerFormated == nowFormated) {
              print (checkerFormated);
              print(nowFormated);
              return Todays(
                  snapshot.data[index].name != null
                      ? snapshot.data[index].name
                      : '',
                  databaseFormated);
            } else {
              return null;
            }
          }

此代码仅适用于第一项。它没有显示任何其他项目。

标签: flutterlistviewsqfliteflutter-listviewflutter-futurebuilder

解决方案


我解决了。问题在于 else 返回类型为空。我给了它一个空大小的盒子,它可以工作。

else {
                      return SizedBox.shrink();
                    }

推荐阅读