flutter - 根据日期显示列表项 - 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;
}
}
此代码仅适用于第一项。它没有显示任何其他项目。
解决方案
我解决了。问题在于 else 返回类型为空。我给了它一个空大小的盒子,它可以工作。
else {
return SizedBox.shrink();
}
推荐阅读
- libgdx - 我在 LIBGDX 中找不到 SDK
- node.js - 如何使用 express-graphql 发送成功响应消息?
- javascript - 在Vue中启用下拉选择按钮?
- c# - 将 Bitmap 更改为 BitmapImage 时 WPF 应用程序停止
- powershell - PowerShell Get-Counter cmdlet 返回内部错误
- react-native - 未处理的拒绝(TypeError):无法读取 react-native 中未定义的属性“调度”
- python - 为什么这段代码不把这些值放在电子表格中?
- ruby-on-rails - 将静态网站部署到 heroku 但错误:“错误:未找到 'composer.lock'!”
- netsuite - SuiteScript 2.0 在 Inventory Details 上设置 bin 编号 (binnumber) 引发 INVALID_FLD_VALUE
- python - 为什么我的断路器阈值会影响 MQTT 中的 QoS 1?