如何在Flutter中隐藏或显示一行中的图标

ndasle7k  于 2023-02-09  发布在  Flutter
关注(0)|答案(1)|浏览(150)

我有一行,其中包括3个图标,但其中一个需要显示,如果已添加注解,但隐藏,如果没有注解。
我尝试使用可见性,但无法得到它的权利。如果没有笔记,我需要使用一个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),
        ),
      ),
    ),
ccrfmcuu

ccrfmcuu1#

我在你的代码片段中看不到你是如何检查你是否有注解的。我用了一个布尔值“notestExist”,检查它是否为真并显示你的图标,否则显示一个空容器。你也可以做一些类似注解的事情。长度!= 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()
),

相关问题