Skip to content

Radio(单选按钮) ​

ui.Radio 创建一个带标签的单选按钮,把它的值选中到一个 *T:点击会选中 它,在它拥有键盘焦点时按空格也一样,Changed 上报该操作。值可以是任何 可比较的类型。

ui.RadioGroup 把其中的单选按钮作为 Tab 的一个焦点停靠点容纳:Tab 前往 被选中的那个,方向键在它们之间选择,Home 和 End 也一样。

go
ui.RadioGroup(c, func() {
	for _, size := range []string{"Small", "Medium", "Large"} {
		ui.Radio(c, &app.size, size, size)
	}
}).Label("Size")

单选按钮组是一个列;用 Row 使它成为一行:

go
ui.RadioGroup(c, func() {
	ui.Radio(c, &app.align, ui.Start, "Left")
	ui.Radio(c, &app.align, ui.Center, "Center")
	ui.Radio(c, &app.align, ui.End, "Right")
}).Row().Gap(16).Label("Alignment")

对于大量选项的选择,使用选择器或组合框; 视图之间的切换,使用分段控件。

无外观 ​

ui.RadioBase 是一个没有外观的单选按钮:一个在被点击时选中其值的行:参见 自定义控件。

无障碍 ​

辅助技术看到的是一个由其 Label 命名的单选按钮组,其中的单选按钮由各自 的标签命名,被选中的那个处于开启状态。