【问题标题】:How to hide or show an icon in a row in Flutter如何在 Flutter 中连续隐藏或显示图标
【发布时间】:2023-02-08 17:27:40
【问题描述】:

我有一行包含 3 个图标,但如果添加了注释,我需要显示其中一个,但如果没有注释,则隐藏。

我尝试使用 Visibility 但无法正确使用。如果没有注释,我需要使用 SizedBox 以便其他所有内容保持正确对齐。

这样做的正确方法是什么?

    Expanded(
      flex: 14,
      child: Center(
        child: GestureDetector(
          onTap: () {
            print(data[index].rosterId);
            Navigator.push(
              context,
              MaterialPageRoute(
                builder: (context) => ShiftsForRoster(
                  rId: data[index].rosterId,
                ),
              ),
            );
          },
          child: Icon(Icons.note_alt_outlined, size: 35, color: kMainColor80),
        ),
      ),
    ),

【问题讨论】:

    标签: flutter dart


    【解决方案1】:

    我在你的代码 sn-p 中看不到你如何检查你是否有笔记。我使用了一个布尔值“notestExist”,检查它是否为真并显示你的图标,否则显示一个空容器。你也可以做类似 notes.length != 0 的事情

      Expanded(
      flex: 14,
      child: notesExist ? Center(
        child: GestureDetector(
          onTap: () {
            print(data[index].rosterId);
            Navigator.push(
              context,
              MaterialPageRoute(
                builder: (context) => ShiftsForRoster(
                  rId: data[index].rosterId,
                ),
              ),
            );
          },
          child: Icon(Icons.note_alt_outlined, size: 35, color: kMainColor80),
        ),
      ) : Contaniner()
    ),
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2013-05-12
      • 1970-01-01
      • 2017-11-01
      • 1970-01-01
      • 2012-05-06
      • 2018-06-20
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多