Skip to content

选项卡 ​

ui.Tabs 创建一行显示标签的选项卡,其中一个 *int 保存当前选中项的 索引。点击可以选择某个选项卡;当某个选项卡拥有键盘焦点时,方向键、Home 和 End 同样可以选择,且焦点会跟随选择;Changed 会报告新的选择。在这些 选项卡下方构建所选选项卡的页面:

go
ui.Tabs(c, &app.tab, "General", "Appearance", "Advanced")
switch app.tab {
case 0:
	app.general(c)
case 1:
	app.appearance(c)
case 2:
	app.advanced(c)
}

整组选项卡只是 Tab 键的一个停靠点,Tab 会落到选中的选项卡上。对于有历史 记录、可用"后退"返回的页面,请使用路由;对于工具栏中的 视图切换,请使用分段控件。

不带外观 ​

ui.TabsBase 是一个不带外观的选项卡列表:承载各选项卡的 List,其中 每个 Tab 用于选择索引,方向键会移动选中项和焦点:

go
tabs := ui.TabsBase(c, &app.tab, len(names))
tabs.List.Gap(4).Children(func() {
	for i, name := range names {
		tab := tabs.Tab(i).Padding(6, 12).Radius(6)
		if i == app.tab {
			tab.Background(t.Surface)
		}
		tab.Children(func() { ui.Text(c, name) })
	}
})

参见自定义控件。

无障碍 ​

辅助技术会看到一个选项卡列表,其中各选项卡以其标签命名,选中的一个处于 选中状态。