我想使用“可见性”小部件来隐藏单击按钮时文本小部件的可见性。如何在Flutter中实现这一目标?我创建了一个函数,该函数接受一个bool变量,该变量定义了文本小部件的可见性。在单击按钮时,我正在调用该函数。第一次将文本显示给用户。但是单击该按钮,该文本不是不可见的。
//created a method to show and hide the text using visibility widget
hideTextVisibility(bool visibilityStatus){
return visibilityStatus? Visibility(
visible: visibilityStatus,
child: Text("flutter"),
):Container();}
//button click code and for the first time the text will be visible
RaisedButton(onPressed: (){
setState(() {
hideTextVisibility(false);
});
答案 0 :(得分:1)
第1步:
bool _visible = false;
第2步:
void _toggle() {
setState(() {
_visible = !_visible;
});
}
步骤3: 添加您的RaisedButton或任何其他按钮
onPressed: _toggle,
第4步: 像这样编码您的小部件。
已消失:该小部件不占用任何物理空间,并且完全消失了。
Visibility(
child: Text("Gone"),
visible: _visible,
),
不可见:该小部件占据了屏幕上的物理空间,但对用户不可见。
Visibility(
child: Text("Invisible"),
maintainSize: true,
maintainAnimation: true,
maintainState: true,
visible: _visible,
),
答案 1 :(得分:0)
您要将硬编码 false 传递给按钮的方法hideTextVisibility(false);
,只需在此处hideTextVisibility(visibilityStatus);