当文本小部件不为空时在ListTile中显示标题

时间:2019-10-15 20:48:36

标签: flutter

我正在研究一个警报项目。在我的警报列表中,描述显示为标题,时间显示为字幕。我只想在没有描述的情况下看到闹钟时间。我的问题是,没有描述时我无法隐藏字幕。有人可以帮我吗?谢谢!

ListTile(
                title: Text(
                  (alarm.description != null)
                      ? '${alarm.description}'
                      : '${formatDate(alarm.time, [HH, ':', nn])}',
                  style: Theme.of(context).textTheme.title,
                ),
                subtitle: Text(
                  (alarm.description != null)
                      ? '${formatDate(alarm.time, [HH, ':', nn])}'
                      : '',
                  style: Theme.of(context).textTheme.body1,
                ),

1 个答案:

答案 0 :(得分:0)

首先在subtitle属性中检查描述是否不为null,然后将其传递给Text小部件,否则,可以像这样传递null

ListTile(
  title: Text(
    (alarm.description != null) ? '${alarm.description}' : '${formatDate(alarm.time, [HH, ':', nn])}',
    style: Theme.of(context).textTheme.title,
  ),
  subtitle: (alarm.description != null)
      ? Text(
          '${formatDate(alarm.time, [HH, ':', nn])}',
          style: Theme.of(context).textTheme.body1,
        )
      : null,
),

希望它对您有所帮助:)