1e41f4b71Sopenharmony_ci# TabTitleBar
2e41f4b71Sopenharmony_ci
3e41f4b71Sopenharmony_ci
4e41f4b71Sopenharmony_ci页签型标题栏,用于页面之间的切换。仅一级页面适用。
5e41f4b71Sopenharmony_ci
6e41f4b71Sopenharmony_ci
7e41f4b71Sopenharmony_ci> **说明:**
8e41f4b71Sopenharmony_ci>
9e41f4b71Sopenharmony_ci> 该组件从API Version 10开始支持。后续版本如有新增内容,则采用上角标单独标记该内容的起始版本。
10e41f4b71Sopenharmony_ci
11e41f4b71Sopenharmony_ci
12e41f4b71Sopenharmony_ci## 导入模块
13e41f4b71Sopenharmony_ci
14e41f4b71Sopenharmony_ci```
15e41f4b71Sopenharmony_ciimport { TabTitleBar } from '@kit.ArkUI'
16e41f4b71Sopenharmony_ci```
17e41f4b71Sopenharmony_ci
18e41f4b71Sopenharmony_ci
19e41f4b71Sopenharmony_ci## 子组件
20e41f4b71Sopenharmony_ci
21e41f4b71Sopenharmony_ci22e41f4b71Sopenharmony_ci
23e41f4b71Sopenharmony_ci## 属性
24e41f4b71Sopenharmony_ci不支持[通用属性](ts-universal-attributes-size.md)
25e41f4b71Sopenharmony_ci
26e41f4b71Sopenharmony_ci
27e41f4b71Sopenharmony_ci## TabTitleBar
28e41f4b71Sopenharmony_ci
29e41f4b71Sopenharmony_ciTabTitleBar({tabItems: Array<TabTitleBarTabItem>, menuItems?: Array<TabTitleBarMenuItem>, swiperContent: () => void})
30e41f4b71Sopenharmony_ci
31e41f4b71Sopenharmony_ci**装饰器类型:**\@Component
32e41f4b71Sopenharmony_ci
33e41f4b71Sopenharmony_ci**原子化服务API:** 从API version 11开始,该接口支持在原子化服务中使用。
34e41f4b71Sopenharmony_ci
35e41f4b71Sopenharmony_ci**系统能力:** SystemCapability.ArkUI.ArkUI.Full
36e41f4b71Sopenharmony_ci
37e41f4b71Sopenharmony_ci**参数:**
38e41f4b71Sopenharmony_ci
39e41f4b71Sopenharmony_ci| 名称 | 类型 | 必填 | 装饰器类型 | 说明 |
40e41f4b71Sopenharmony_ci| -------- | -------- | -------- | -------- | -------- |
41e41f4b71Sopenharmony_ci| tabItems | Array<[TabTitleBarTabItem](#tabtitlebartabitem)> | 是 | - | 左侧页签项目列表,定义标题栏左侧的页签项目。 |
42e41f4b71Sopenharmony_ci| menuItems | Array<[TabTitleBarMenuItem](#tabtitlebarmenuitem)> | 否 | - | 右侧菜单项目列表,定义标题栏右侧的菜单项目。 |
43e41f4b71Sopenharmony_ci| swiperContent | () => void | 是 | \@BuilderParam | 页签列表关联的页面内容构造器。 |
44e41f4b71Sopenharmony_ci
45e41f4b71Sopenharmony_ci> **说明:**
46e41f4b71Sopenharmony_ci> 
47e41f4b71Sopenharmony_ci> 入参对象不可为undefined,即`TabTitleBar(undefined)`。
48e41f4b71Sopenharmony_ci
49e41f4b71Sopenharmony_ci## TabTitleBarMenuItem
50e41f4b71Sopenharmony_ci
51e41f4b71Sopenharmony_ci**系统能力:** SystemCapability.ArkUI.ArkUI.Full
52e41f4b71Sopenharmony_ci
53e41f4b71Sopenharmony_ci| 名称 | 类型 | 必填 | 说明 |
54e41f4b71Sopenharmony_ci| -------- | -------- | -------- | -------- |
55e41f4b71Sopenharmony_ci| value | [ResourceStr](ts-types.md#resourcestr) | 是 | 图标资源。<br/>**原子化服务API:** 从API version 11开始,该接口支持在原子化服务中使用。 |
56e41f4b71Sopenharmony_ci| label<sup>13+</sup> | [ResourceStr](ts-types.md#resourcestr) | 否 | 图标标签描述。<br/>**原子化服务API:** 从API version 13开始,该接口支持在原子化服务中使用。 |
57e41f4b71Sopenharmony_ci| isEnabled | boolean | 否 | 是否启用。默认启用。true:启用,false:禁用。<br/>**原子化服务API:** 从API version 11开始,该接口支持在原子化服务中使用。 |
58e41f4b71Sopenharmony_ci| action | ()&nbsp;=&gt;&nbsp;void | 否 | 触发时的动作闭包。<br/>**原子化服务API:** 从API version 11开始,该接口支持在原子化服务中使用。 |
59e41f4b71Sopenharmony_ci
60e41f4b71Sopenharmony_ci## TabTitleBarTabItem
61e41f4b71Sopenharmony_ci
62e41f4b71Sopenharmony_ci**原子化服务API:** 从API version 11开始,该接口支持在原子化服务中使用。
63e41f4b71Sopenharmony_ci
64e41f4b71Sopenharmony_ci**系统能力:** SystemCapability.ArkUI.ArkUI.Full
65e41f4b71Sopenharmony_ci
66e41f4b71Sopenharmony_ci| 名称 | 类型 | 必填 | 说明 |
67e41f4b71Sopenharmony_ci| -------- | -------- | -------- | -------- |
68e41f4b71Sopenharmony_ci| title | [ResourceStr](ts-types.md#resourcestr) | 是 | 文字页签。 |
69e41f4b71Sopenharmony_ci| icon | [ResourceStr](ts-types.md#resourcestr) | 否 | 图片页签资源。 |
70e41f4b71Sopenharmony_ci
71e41f4b71Sopenharmony_ci
72e41f4b71Sopenharmony_ci## 事件
73e41f4b71Sopenharmony_ci不支持[通用事件](ts-universal-events-click.md)
74e41f4b71Sopenharmony_ci
75e41f4b71Sopenharmony_ci## 示例
76e41f4b71Sopenharmony_ci
77e41f4b71Sopenharmony_ci```ts
78e41f4b71Sopenharmony_ciimport { TabTitleBar, promptAction } from '@kit.ArkUI'
79e41f4b71Sopenharmony_ci
80e41f4b71Sopenharmony_ciclass tabItem {
81e41f4b71Sopenharmony_ci  title: ResourceStr;
82e41f4b71Sopenharmony_ci  icon?: ResourceStr;
83e41f4b71Sopenharmony_ci  constructor(title: ResourceStr,icon?: ResourceStr) {
84e41f4b71Sopenharmony_ci    this.title = title
85e41f4b71Sopenharmony_ci    this.icon = icon
86e41f4b71Sopenharmony_ci  }
87e41f4b71Sopenharmony_ci}
88e41f4b71Sopenharmony_ci
89e41f4b71Sopenharmony_ciinterface menuItem {
90e41f4b71Sopenharmony_ci  value: ResourceStr;
91e41f4b71Sopenharmony_ci  isEnabled?: boolean;
92e41f4b71Sopenharmony_ci  action?: () => void
93e41f4b71Sopenharmony_ci}
94e41f4b71Sopenharmony_ci
95e41f4b71Sopenharmony_ci@Entry
96e41f4b71Sopenharmony_ci@Component
97e41f4b71Sopenharmony_cistruct Index {
98e41f4b71Sopenharmony_ci  @Builder
99e41f4b71Sopenharmony_ci  componentBuilder() {
100e41f4b71Sopenharmony_ci    Text("#1ABC9C\nTURQUOISE")
101e41f4b71Sopenharmony_ci      .fontWeight(FontWeight.Bold)
102e41f4b71Sopenharmony_ci      .fontSize(14)
103e41f4b71Sopenharmony_ci      .width("100%")
104e41f4b71Sopenharmony_ci      .textAlign(TextAlign.Center)
105e41f4b71Sopenharmony_ci      .fontColor("#CCFFFFFF")
106e41f4b71Sopenharmony_ci      .backgroundColor("#1ABC9C")
107e41f4b71Sopenharmony_ci    Text("#16A085\nGREEN SEA")
108e41f4b71Sopenharmony_ci      .fontWeight(FontWeight.Bold)
109e41f4b71Sopenharmony_ci      .fontSize(14)
110e41f4b71Sopenharmony_ci      .width("100%")
111e41f4b71Sopenharmony_ci      .textAlign(TextAlign.Center)
112e41f4b71Sopenharmony_ci      .fontColor("#CCFFFFFF")
113e41f4b71Sopenharmony_ci      .backgroundColor("#16A085")
114e41f4b71Sopenharmony_ci    Text("#2ECC71\nEMERALD")
115e41f4b71Sopenharmony_ci      .fontWeight(FontWeight.Bold)
116e41f4b71Sopenharmony_ci      .fontSize(14)
117e41f4b71Sopenharmony_ci      .width("100%")
118e41f4b71Sopenharmony_ci      .textAlign(TextAlign.Center)
119e41f4b71Sopenharmony_ci      .fontColor("#CCFFFFFF")
120e41f4b71Sopenharmony_ci      .backgroundColor("#2ECC71")
121e41f4b71Sopenharmony_ci    Text("#27AE60\nNEPHRITIS")
122e41f4b71Sopenharmony_ci      .fontWeight(FontWeight.Bold)
123e41f4b71Sopenharmony_ci      .fontSize(14)
124e41f4b71Sopenharmony_ci      .width("100%")
125e41f4b71Sopenharmony_ci      .textAlign(TextAlign.Center)
126e41f4b71Sopenharmony_ci      .fontColor("#CCFFFFFF")
127e41f4b71Sopenharmony_ci      .backgroundColor("#27AE60")
128e41f4b71Sopenharmony_ci    Text("#3498DB\nPETER RIVER")
129e41f4b71Sopenharmony_ci      .fontWeight(FontWeight.Bold)
130e41f4b71Sopenharmony_ci      .fontSize(14)
131e41f4b71Sopenharmony_ci      .width("100%")
132e41f4b71Sopenharmony_ci      .textAlign(TextAlign.Center)
133e41f4b71Sopenharmony_ci      .fontColor("#CCFFFFFF")
134e41f4b71Sopenharmony_ci      .backgroundColor("#3498DB")
135e41f4b71Sopenharmony_ci  }
136e41f4b71Sopenharmony_ci
137e41f4b71Sopenharmony_ci  private readonly tabItems: Array<tabItem> = [new tabItem('页签1'),new tabItem('页签2'),new tabItem('页签3'),new tabItem("Happy",$r('app.media.emoji_happy')),new tabItem('页签4')]
138e41f4b71Sopenharmony_ci  private  readonly menuItems: Array<menuItem> = [
139e41f4b71Sopenharmony_ci    {
140e41f4b71Sopenharmony_ci      value: $r('app.media.ic_public_reduce'),
141e41f4b71Sopenharmony_ci      isEnabled: true,
142e41f4b71Sopenharmony_ci      action: () => promptAction.showToast({ message: "on item click! index 0" })
143e41f4b71Sopenharmony_ci    },
144e41f4b71Sopenharmony_ci    {
145e41f4b71Sopenharmony_ci      value: $r('app.media.ic_public_edit'),
146e41f4b71Sopenharmony_ci      isEnabled: true,
147e41f4b71Sopenharmony_ci      action: () => promptAction.showToast({ message: "on item click! index 1" })
148e41f4b71Sopenharmony_ci    },
149e41f4b71Sopenharmony_ci    {
150e41f4b71Sopenharmony_ci      value: $r('app.media.ic_public_save'),
151e41f4b71Sopenharmony_ci      isEnabled: true,
152e41f4b71Sopenharmony_ci      action: () => promptAction.showToast({ message: "on item click! index 2" })
153e41f4b71Sopenharmony_ci    },
154e41f4b71Sopenharmony_ci  ]
155e41f4b71Sopenharmony_ci
156e41f4b71Sopenharmony_ci  build() {
157e41f4b71Sopenharmony_ci    Row() {
158e41f4b71Sopenharmony_ci      Column() {
159e41f4b71Sopenharmony_ci        TabTitleBar({
160e41f4b71Sopenharmony_ci          swiperContent: this.componentBuilder,
161e41f4b71Sopenharmony_ci          tabItems: this.tabItems,
162e41f4b71Sopenharmony_ci          menuItems: this.menuItems,
163e41f4b71Sopenharmony_ci        })
164e41f4b71Sopenharmony_ci      }.width('100%')
165e41f4b71Sopenharmony_ci    }.height('100%')
166e41f4b71Sopenharmony_ci  }
167e41f4b71Sopenharmony_ci}
168e41f4b71Sopenharmony_ci```
169e41f4b71Sopenharmony_ci
170e41f4b71Sopenharmony_ci![zh-cn_image_0000001616916278](figures/zh-cn_image_0000001616916278.png)
171