在 Flutter 中设置开关按钮的图标

时间:2021-03-26 12:09:16

标签: flutter flutter-web

我想在开关打开时设置“完成”图标,在开关关闭时设置“关闭”图标。

这是一个示例图片:

enter image description here

我正在寻找与图片中所示相同的切换开关,在那个圆形中,当我滑动它时需要打勾,当我滑动它时需要十字标记。

我该怎么做?

2 个答案:

答案 0 :(得分:1)

使用 onPress() 函数在按钮被按下时切换布尔变量。调用 setState()。然后根据变量保存的值,更改从 return 语句返回的小部件。

你需要的是条件渲染

您可以查找此内容并在 google 和 SO 上找到几篇帖子。

答案 1 :(得分:1)

您可以尝试在 add_patch 语句中使用 boolean 值。

首先声明一个 switch

boolean

然后,使用 var isOn = True; 运算符有条件地呈现开/关图标小部件。您还需要在按下按钮/图标时使用 ternary 切换布尔值。

setState

或者,如果您想将它与 InkWell( onTap: () => setState(() => isOn = !isOn), child: isOn ? SwitchOnIconWidget() : SwitchOffIconWidget(), ) 一起使用,那么您也可以这样做:

onPressed