在 Flutter 中设置开关按钮的图标 [关闭]
Posted
技术标签:
【中文标题】在 Flutter 中设置开关按钮的图标 [关闭]【英文标题】:Set the icon for switch button in Flutter [closed] 【发布时间】:2021-06-23 06:23:30 【问题描述】:我想在开关打开时设置“完成”图标,在关闭时设置“关闭”图标。
这是一个示例图像:
我正在寻找与图片相同的拨动开关,在那个圆形中,当我滑动它时我需要勾选标记,当我滑动它时需要十字标记。
我该怎么做?
【问题讨论】:
这能回答你的问题吗? How to use conditional statement within child attribute of a Flutter Widget (Center Widget) 【参考方案1】:按下按钮时,使用 onPress() 函数切换布尔变量。调用 setState()。然后根据变量持有的值,改变从return语句返回的widget。
你需要的叫做条件渲染
您可以查找此内容并在 google 和 SO 上找到一些帖子。
【讨论】:
【参考方案2】:您可以尝试将boolean
值与switch
语句一起使用。
首先,声明一个boolean
var isOn = True;
然后,使用ternary
运算符有条件地呈现开/关图标小部件。您需要在按下按钮/图标时使用 setState
切换布尔值。
InkWell(
onTap: () => setState(() => isOn = !isOn),
child: isOn ? SwitchOnIconWidget() : SwitchOffIconWidget(),
)
或者,如果您想将它与onPressed
一起使用,那么您也可以这样做:
onPressed: () => setState(() => isOn = !isOn),
child: isOn ? SwitchOnIconWidget() : SwitchOffIconWidget(),
【讨论】:
以上是关于在 Flutter 中设置开关按钮的图标 [关闭]的主要内容,如果未能解决你的问题,请参考以下文章
Flutter中设置Android的应用名称和图标(android,ios,web)#yyds干货盘点#
如何在mfc中设置大小和透明/清除CMFCToolBar按钮和图标?
FlutterFlutter 启动白屏问题 ( 问题描述 | 在 launch_background.xml 中设置启动过渡 UI )