外观
选项卡
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) })
}
})参见自定义控件。
无障碍
辅助技术会看到一个选项卡列表,其中各选项卡以其标签命名,选中的一个处于 选中状态。