外观
Toggle(切换按钮)
ui.Toggle 创建一个在 *bool 为 true 时保持按下状态的按钮,就像编辑器 工具栏里的加粗:点击会将其按下或松开,在它拥有键盘焦点时按空格也一样, Changed 会上报一次变化。
go
ui.Toggle(c, &app.inspector, "Inspector")用 Children 和一个空标签给它其他内容,比如图标,并用 Label 命名它:
go
ui.Toggle(c, &app.bold, "").Label("Bold").Children(func() { ui.Icon(c, boldIcon) })切换按钮组
ui.ToggleGroup 把其中的切换按钮和按钮连成一体绘制,像一个控件的各个 分段,比如加粗、斜体和下划线。它们是 Tab 的一个焦点停靠点,方向键在其中 移动焦点,如同在工具栏中:
go
ui.ToggleGroup(c, func() {
ui.Toggle(c, &app.bold, "B")
ui.Toggle(c, &app.italic, "I")
ui.Toggle(c, &app.underline, "U")
}).Label("Style")对于多选一的场景,如视图模式,使用分段控件。
无外观
ui.ToggleBase 是一个没有外观的切换按钮:一个在被点击时翻转其 *bool 的 行:参见自定义控件。
无障碍
辅助技术看到的是一个切换按钮,处于开启时显示为按下状态;切换按钮组则是一 个由其 Label 命名的组。