单击按钮颤振后显示列表图块
show List Tile after clicking on button flutter
我有一个 Elevatebutton,当我点击它时,我可以看到显示的 listTile,在我点击另一个按钮后,listTile 将消失。我的代码是这样写的:
ElevatedButton(
onPressed: ( ) {
setState(() {
ListTile(
leading: Icon(Icons.add),
title: Text('GFG title',textScaleFactor: 1.5,),
trailing: Icon(Icons.done),
);
});
},
child: Text('button1'),
style: ElevatedButton.styleFrom(shape: StadiumBorder()),
),
但即使单击按钮,我也看不到 listTile。我该如何解决?有人可以帮助我吗?
按下按钮时,您不能只编写一个小部件,它就会出现。您可以做的一件事是在视图中已经有 ListTile,但它是不可见的。然后,当您按下按钮时,它就会变得可见。这是一个例子:
bool _isVisible = false;
...
...
Column(
children: [ElevatedButton(
onPressed: () {
setState(() {
_isVisible = true;
});
},
child: Text('button1'),
style: ElevatedButton.styleFrom(shape: StadiumBorder()),
),
Visibility(
visible: _isVisible,
child: ListTile(
leading: Icon(Icons.add),
title: Text('GFG title', textScaleFactor: 1.5,),
trailing: Icon(Icons.done),
))
],
)
试试下面的代码:
声明布尔变量
bool buttonPressed = false;
您的小部件:
Column(
mainAxisAlignment: MainAxisAlignment.center,
children: [
buttonPressed
? ListTile(
leading: Icon(Icons.add),
title: Text(
'GFG title',
textScaleFactor: 1.5,
),
trailing: Icon(Icons.done),
)
: Container(),
ElevatedButton(
child: Text("Show Widget"),
onPressed: () {
setState(() {
buttonPressed = true;
});
},
)
],
),
我有一个 Elevatebutton,当我点击它时,我可以看到显示的 listTile,在我点击另一个按钮后,listTile 将消失。我的代码是这样写的:
ElevatedButton(
onPressed: ( ) {
setState(() {
ListTile(
leading: Icon(Icons.add),
title: Text('GFG title',textScaleFactor: 1.5,),
trailing: Icon(Icons.done),
);
});
},
child: Text('button1'),
style: ElevatedButton.styleFrom(shape: StadiumBorder()),
),
但即使单击按钮,我也看不到 listTile。我该如何解决?有人可以帮助我吗?
按下按钮时,您不能只编写一个小部件,它就会出现。您可以做的一件事是在视图中已经有 ListTile,但它是不可见的。然后,当您按下按钮时,它就会变得可见。这是一个例子:
bool _isVisible = false;
...
...
Column(
children: [ElevatedButton(
onPressed: () {
setState(() {
_isVisible = true;
});
},
child: Text('button1'),
style: ElevatedButton.styleFrom(shape: StadiumBorder()),
),
Visibility(
visible: _isVisible,
child: ListTile(
leading: Icon(Icons.add),
title: Text('GFG title', textScaleFactor: 1.5,),
trailing: Icon(Icons.done),
))
],
)
试试下面的代码:
声明布尔变量
bool buttonPressed = false;
您的小部件:
Column(
mainAxisAlignment: MainAxisAlignment.center,
children: [
buttonPressed
? ListTile(
leading: Icon(Icons.add),
title: Text(
'GFG title',
textScaleFactor: 1.5,
),
trailing: Icon(Icons.done),
)
: Container(),
ElevatedButton(
child: Text("Show Widget"),
onPressed: () {
setState(() {
buttonPressed = true;
});
},
)
],
),