我想在按下按钮时创建小部件

问题描述

我如何在按下 IconButton 时创建小部件我尝试了一些东西但它不起作用。如果你知道并帮助我,我会很高兴。

Container(
      color: Colors.redAccent,height: commonHeight / 12,width: commonWidth * 10 / 100,child: IconButton(
        highlightColor: Colors.yellow,icon: Icon(Icons.add_sharp),iconSize: 25,onpressed: () {
        print('Something');
                  },),],

解决方法

首先创建一个 bool 变量(假设您将其命名为 WidgetVisisble),它将控制小部件的可见性。然后在您的小部件树中,您可以添加如下条件语句:

isWidgetVisible ? YourWidget() : Container();

这一行的意思很简单,如果你的 isWidget Visible 为真,则显示该小部件,否则将显示一个高度和宽度为 0 的空容器。

然后在您的 onPressed 函数中,您可以调用 setState 将切换布尔变量,它将是这样的:

onPressed: () {
       setState((){
       isWidgetVisible = true;
  });
},

还要确保正确放置新小部件,如果您已将其添加到列中间的某个位置,那么它会将其下方的其他小部件向下推。