1e41f4b71Sopenharmony_ci# SideBarContainer 2e41f4b71Sopenharmony_ci 3e41f4b71Sopenharmony_ci提供侧边栏可以显示和隐藏的侧边栏容器,通过子组件定义侧边栏和内容区,第一个子组件表示侧边栏,第二个子组件表示内容区。 4e41f4b71Sopenharmony_ci 5e41f4b71Sopenharmony_ci> **说明:** 6e41f4b71Sopenharmony_ci> 7e41f4b71Sopenharmony_ci> 该组件从API Version 8开始支持。后续版本如有新增内容,则采用上角标单独标记该内容的起始版本。 8e41f4b71Sopenharmony_ci 9e41f4b71Sopenharmony_ci 10e41f4b71Sopenharmony_ci## 子组件 11e41f4b71Sopenharmony_ci 12e41f4b71Sopenharmony_ci可以包含子组件。 13e41f4b71Sopenharmony_ci 14e41f4b71Sopenharmony_ci> **说明:** 15e41f4b71Sopenharmony_ci> 16e41f4b71Sopenharmony_ci> - 子组件类型:系统组件和自定义组件,不支持渲染控制类型([if/else](../../../quick-start/arkts-rendering-control-ifelse.md)、[ForEach](../../../quick-start/arkts-rendering-control-foreach.md)和[LazyForEach](../../../quick-start/arkts-rendering-control-lazyforeach.md))。 17e41f4b71Sopenharmony_ci> - 子组件个数:必须且仅包含2个子组件。 18e41f4b71Sopenharmony_ci> - 子组件个数异常时:3个或以上子组件,显示第一个和第二个。1个子组件,显示侧边栏,内容区为空白。 19e41f4b71Sopenharmony_ci 20e41f4b71Sopenharmony_ci 21e41f4b71Sopenharmony_ci## 接口 22e41f4b71Sopenharmony_ci 23e41f4b71Sopenharmony_ciSideBarContainer( type?: SideBarContainerType ) 24e41f4b71Sopenharmony_ci 25e41f4b71Sopenharmony_ci**原子化服务API:** 从API version 11开始,该接口支持在原子化服务中使用。 26e41f4b71Sopenharmony_ci 27e41f4b71Sopenharmony_ci**系统能力:** SystemCapability.ArkUI.ArkUI.Full 28e41f4b71Sopenharmony_ci 29e41f4b71Sopenharmony_ci**参数:** 30e41f4b71Sopenharmony_ci 31e41f4b71Sopenharmony_ci| 参数名 | 类型 | 必填 | 说明 | 32e41f4b71Sopenharmony_ci| -------- | -------- | -------- | -------- | 33e41f4b71Sopenharmony_ci| type | [SideBarContainerType](#sidebarcontainertype枚举说明) | 否 | 设置侧边栏的显示类型。<br/>默认值:SideBarContainerType.Embed | 34e41f4b71Sopenharmony_ci 35e41f4b71Sopenharmony_ci## SideBarContainerType枚举说明 36e41f4b71Sopenharmony_ci 37e41f4b71Sopenharmony_ci**原子化服务API:** 从API version 11开始,该接口支持在原子化服务中使用。 38e41f4b71Sopenharmony_ci 39e41f4b71Sopenharmony_ci**系统能力:** SystemCapability.ArkUI.ArkUI.Full 40e41f4b71Sopenharmony_ci 41e41f4b71Sopenharmony_ci| 名称 | 说明 | 42e41f4b71Sopenharmony_ci| -------- | -------- | 43e41f4b71Sopenharmony_ci| Embed | 侧边栏嵌入到组件内,和内容区并列显示。<br/>组件尺寸小于minContentWidth + minSideBarWidth,并且未设置showSideBar时,侧边栏自动隐藏。<br/>未设置minSideBarWidth或者minContentWidth采用未设置接口的默认值进行计算。<br/> 组件在自动隐藏后,如果通过点击控制按钮唤出侧边栏,则侧边栏悬浮在内容区上显示。| 44e41f4b71Sopenharmony_ci| Overlay | 侧边栏浮在内容区上面。 | 45e41f4b71Sopenharmony_ci| AUTO<sup>10+</sup> | 组件尺寸大于等于minSideBarWidth+minContentWidth时,采用Embed模式显示。<br/>组件尺寸小于minSideBarWidth+minContentWidth时,采用Overlay模式显示。<br/>未设置minSideBarWidth或minContentWidth时,会使用未设置接口的默认值进行计算,若计算的值小于600vp,则使用600vp做为模式切换的断点值。| 46e41f4b71Sopenharmony_ci 47e41f4b71Sopenharmony_ci## 属性 48e41f4b71Sopenharmony_ci 49e41f4b71Sopenharmony_ci除支持[通用属性](ts-universal-attributes-size.md)外,还支持以下属性: 50e41f4b71Sopenharmony_ci 51e41f4b71Sopenharmony_ci### showSideBar 52e41f4b71Sopenharmony_ci 53e41f4b71Sopenharmony_cishowSideBar(value: boolean) 54e41f4b71Sopenharmony_ci 55e41f4b71Sopenharmony_ci设置是否显示侧边栏。 56e41f4b71Sopenharmony_ci 57e41f4b71Sopenharmony_ci从API version 10开始,该属性支持[$$](../../../quick-start/arkts-two-way-sync.md)双向绑定变量。 58e41f4b71Sopenharmony_ci 59e41f4b71Sopenharmony_ci**原子化服务API:** 从API version 11开始,该接口支持在原子化服务中使用。 60e41f4b71Sopenharmony_ci 61e41f4b71Sopenharmony_ci**系统能力:** SystemCapability.ArkUI.ArkUI.Full 62e41f4b71Sopenharmony_ci 63e41f4b71Sopenharmony_ci**参数:** 64e41f4b71Sopenharmony_ci 65e41f4b71Sopenharmony_ci| 参数名 | 类型 | 必填 | 说明 | 66e41f4b71Sopenharmony_ci| ------ | ------- | ---- | ------------------------------------------------------------ | 67e41f4b71Sopenharmony_ci| value | boolean | 是 | 是否显示侧边栏。<br/>true:显示侧边栏<br/>false:不显示侧边栏<br/>默认值:true | 68e41f4b71Sopenharmony_ci 69e41f4b71Sopenharmony_ci### controlButton 70e41f4b71Sopenharmony_ci 71e41f4b71Sopenharmony_cicontrolButton(value: ButtonStyle) 72e41f4b71Sopenharmony_ci 73e41f4b71Sopenharmony_ci设置侧边栏控制按钮的属性。 74e41f4b71Sopenharmony_ci 75e41f4b71Sopenharmony_ci**原子化服务API:** 从API version 11开始,该接口支持在原子化服务中使用。 76e41f4b71Sopenharmony_ci 77e41f4b71Sopenharmony_ci**系统能力:** SystemCapability.ArkUI.ArkUI.Full 78e41f4b71Sopenharmony_ci 79e41f4b71Sopenharmony_ci**参数:** 80e41f4b71Sopenharmony_ci 81e41f4b71Sopenharmony_ci| 参数名 | 类型 | 必填 | 说明 | 82e41f4b71Sopenharmony_ci| ------ | ----------------------------------- | ---- | ---------------------- | 83e41f4b71Sopenharmony_ci| value | [ButtonStyle](#buttonstyle对象说明) | 是 | 侧边栏控制按钮的属性。 | 84e41f4b71Sopenharmony_ci 85e41f4b71Sopenharmony_ci### showControlButton 86e41f4b71Sopenharmony_ci 87e41f4b71Sopenharmony_cishowControlButton(value: boolean) 88e41f4b71Sopenharmony_ci 89e41f4b71Sopenharmony_ci设置是否显示控制按钮。 90e41f4b71Sopenharmony_ci 91e41f4b71Sopenharmony_ci**原子化服务API:** 从API version 11开始,该接口支持在原子化服务中使用。 92e41f4b71Sopenharmony_ci 93e41f4b71Sopenharmony_ci**系统能力:** SystemCapability.ArkUI.ArkUI.Full 94e41f4b71Sopenharmony_ci 95e41f4b71Sopenharmony_ci**参数:** 96e41f4b71Sopenharmony_ci 97e41f4b71Sopenharmony_ci| 参数名 | 类型 | 必填 | 说明 | 98e41f4b71Sopenharmony_ci| ------ | ------- | ---- | ------------------------------------------------------------ | 99e41f4b71Sopenharmony_ci| value | boolean | 是 | 是否显示控制按钮。<br/>true:显示控制按钮<br/>false:不显示控制按钮<br/>默认值:true | 100e41f4b71Sopenharmony_ci 101e41f4b71Sopenharmony_ci### sideBarWidth 102e41f4b71Sopenharmony_ci 103e41f4b71Sopenharmony_cisideBarWidth(value: number) 104e41f4b71Sopenharmony_ci 105e41f4b71Sopenharmony_ci设置侧边栏的宽度。设置为小于0的值时按默认值显示。受最小宽度和最大宽度限制,不在限制区域内取最近的点。 106e41f4b71Sopenharmony_ci 107e41f4b71Sopenharmony_ci**原子化服务API:** 从API version 11开始,该接口支持在原子化服务中使用。 108e41f4b71Sopenharmony_ci 109e41f4b71Sopenharmony_ci**系统能力:** SystemCapability.ArkUI.ArkUI.Full 110e41f4b71Sopenharmony_ci 111e41f4b71Sopenharmony_ci**参数:** 112e41f4b71Sopenharmony_ci 113e41f4b71Sopenharmony_ci| 参数名 | 类型 | 必填 | 说明 | 114e41f4b71Sopenharmony_ci| ------ | ------------------------------------------------------------ | ---- | ------------------------------------------------------------ | 115e41f4b71Sopenharmony_ci| value | number | 是 | 侧边栏的宽度。<br/>默认值:240vp<br/>单位:vp<br/>**说明:** <br/>API version 9及以下版本默认值为200vp,API version 10的默认值为240vp。 | 116e41f4b71Sopenharmony_ci 117e41f4b71Sopenharmony_ci### sideBarWidth<sup>9+</sup> 118e41f4b71Sopenharmony_ci 119e41f4b71Sopenharmony_cisideBarWidth(value: Length) 120e41f4b71Sopenharmony_ci 121e41f4b71Sopenharmony_ci设置侧边栏的宽度。设置为小于0的值时按默认值显示。受最小宽度和最大宽度限制,不在限制区域内取最近的点。 122e41f4b71Sopenharmony_ci 123e41f4b71Sopenharmony_ci**原子化服务API:** 从API version 11开始,该接口支持在原子化服务中使用。 124e41f4b71Sopenharmony_ci 125e41f4b71Sopenharmony_ci**系统能力:** SystemCapability.ArkUI.ArkUI.Full 126e41f4b71Sopenharmony_ci 127e41f4b71Sopenharmony_ci**参数:** 128e41f4b71Sopenharmony_ci 129e41f4b71Sopenharmony_ci| 参数名 | 类型 | 必填 | 说明 | 130e41f4b71Sopenharmony_ci| ------ | ------------------------------------------------------------ | ---- | ------------------------------------------------------------ | 131e41f4b71Sopenharmony_ci| value | [Length](ts-types.md#length) | 是 | 侧边栏的宽度。<br/>默认值:240vp<br/>单位:vp<br/>**说明:** <br/>API version 9的默认值为200vp,API version 10的默认值为240vp。 | 132e41f4b71Sopenharmony_ci 133e41f4b71Sopenharmony_ci### minSideBarWidth 134e41f4b71Sopenharmony_ci 135e41f4b71Sopenharmony_ciminSideBarWidth(value: number) 136e41f4b71Sopenharmony_ci 137e41f4b71Sopenharmony_ci设置侧边栏最小宽度。设置为小于0的值时按默认值显示。值不能超过侧边栏容器本身宽度,超过使用侧边栏容器本身宽度。 138e41f4b71Sopenharmony_ci 139e41f4b71Sopenharmony_ciminSideBarWidth优先于侧边栏子组件minWidth,minSideBarWidth未设置时默认值优先级高于侧边栏子组件minWidth。 140e41f4b71Sopenharmony_ci 141e41f4b71Sopenharmony_ci**原子化服务API:** 从API version 11开始,该接口支持在原子化服务中使用。 142e41f4b71Sopenharmony_ci 143e41f4b71Sopenharmony_ci**系统能力:** SystemCapability.ArkUI.ArkUI.Full 144e41f4b71Sopenharmony_ci 145e41f4b71Sopenharmony_ci**参数:** 146e41f4b71Sopenharmony_ci 147e41f4b71Sopenharmony_ci| 参数名 | 类型 | 必填 | 说明 | 148e41f4b71Sopenharmony_ci| ------ | ------------------------------------------------------------ | ---- | ------------------------------------------------------------ | 149e41f4b71Sopenharmony_ci| value | number | 是 | 侧边栏最小宽度。<br/>默认值:API version 9及以下版本默认值为200vp,API version 10的默认值为240vp。 | 150e41f4b71Sopenharmony_ci 151e41f4b71Sopenharmony_ci### minSideBarWidth<sup>9+</sup> 152e41f4b71Sopenharmony_ci 153e41f4b71Sopenharmony_ciminSideBarWidth(value: Length) 154e41f4b71Sopenharmony_ci 155e41f4b71Sopenharmony_ci设置侧边栏最小宽度。设置为小于0的值时按默认值显示。值不能超过侧边栏容器本身宽度,超过使用侧边栏容器本身宽度。 156e41f4b71Sopenharmony_ci 157e41f4b71Sopenharmony_ciminSideBarWidth优先于侧边栏子组件minWidth,minSideBarWidth未设置时默认值优先级高于侧边栏子组件minWidth。 158e41f4b71Sopenharmony_ci 159e41f4b71Sopenharmony_ci**原子化服务API:** 从API version 11开始,该接口支持在原子化服务中使用。 160e41f4b71Sopenharmony_ci 161e41f4b71Sopenharmony_ci**系统能力:** SystemCapability.ArkUI.ArkUI.Full 162e41f4b71Sopenharmony_ci 163e41f4b71Sopenharmony_ci**参数:** 164e41f4b71Sopenharmony_ci 165e41f4b71Sopenharmony_ci| 参数名 | 类型 | 必填 | 说明 | 166e41f4b71Sopenharmony_ci| ------ | ------------------------------------------------------------ | ---- | ------------------------------------------------------------ | 167e41f4b71Sopenharmony_ci| value | [Length](ts-types.md#length) | 是 | 侧边栏最小宽度。<br/>默认值:API version 9及以下版本默认值为200vp,API version 10的默认值为240vp。 | 168e41f4b71Sopenharmony_ci 169e41f4b71Sopenharmony_ci### maxSideBarWidth 170e41f4b71Sopenharmony_ci 171e41f4b71Sopenharmony_cimaxSideBarWidth(value: number) 172e41f4b71Sopenharmony_ci 173e41f4b71Sopenharmony_ci设置侧边栏最大宽度。设置为小于0的值时按默认值显示。值不能超过侧边栏容器本身宽度,超过使用侧边栏容器本身宽度。 174e41f4b71Sopenharmony_ci 175e41f4b71Sopenharmony_cimaxSideBarWidth优先于侧边栏子组件maxWidth,maxSideBarWidth未设置时默认值优先级高于侧边栏子组件maxWidth。 176e41f4b71Sopenharmony_ci 177e41f4b71Sopenharmony_ci**原子化服务API:** 从API version 11开始,该接口支持在原子化服务中使用。 178e41f4b71Sopenharmony_ci 179e41f4b71Sopenharmony_ci**系统能力:** SystemCapability.ArkUI.ArkUI.Full 180e41f4b71Sopenharmony_ci 181e41f4b71Sopenharmony_ci**参数:** 182e41f4b71Sopenharmony_ci 183e41f4b71Sopenharmony_ci| 参数名 | 类型 | 必填 | 说明 | 184e41f4b71Sopenharmony_ci| ------ | ------------------------------------------------------------ | ---- | --------------------------------------------------- | 185e41f4b71Sopenharmony_ci| value | number | 是 | 设置侧边栏最大宽度。<br/>默认值:280vp<br/>单位:vp | 186e41f4b71Sopenharmony_ci 187e41f4b71Sopenharmony_ci### maxSideBarWidth<sup>9+</sup> 188e41f4b71Sopenharmony_ci 189e41f4b71Sopenharmony_cimaxSideBarWidth(value: Length) 190e41f4b71Sopenharmony_ci 191e41f4b71Sopenharmony_ci设置侧边栏最大宽度。设置为小于0的值时按默认值显示。值不能超过侧边栏容器本身宽度,超过使用侧边栏容器本身宽度。 192e41f4b71Sopenharmony_ci 193e41f4b71Sopenharmony_cimaxSideBarWidth优先于侧边栏子组件maxWidth,maxSideBarWidth未设置时默认值优先级高于侧边栏子组件maxWidth。 194e41f4b71Sopenharmony_ci 195e41f4b71Sopenharmony_ci**原子化服务API:** 从API version 11开始,该接口支持在原子化服务中使用。 196e41f4b71Sopenharmony_ci 197e41f4b71Sopenharmony_ci**系统能力:** SystemCapability.ArkUI.ArkUI.Full 198e41f4b71Sopenharmony_ci 199e41f4b71Sopenharmony_ci**参数:** 200e41f4b71Sopenharmony_ci 201e41f4b71Sopenharmony_ci| 参数名 | 类型 | 必填 | 说明 | 202e41f4b71Sopenharmony_ci| ------ | ------------------------------------------------------------ | ---- | --------------------------------------------------- | 203e41f4b71Sopenharmony_ci| value | [Length](ts-types.md#length) | 是 | 设置侧边栏最大宽度。<br/>默认值:280vp<br/>单位:vp | 204e41f4b71Sopenharmony_ci 205e41f4b71Sopenharmony_ci### autoHide<sup>9+</sup> 206e41f4b71Sopenharmony_ci 207e41f4b71Sopenharmony_ciautoHide(value: boolean) 208e41f4b71Sopenharmony_ci 209e41f4b71Sopenharmony_ci设置当侧边栏拖拽到小于最小宽度后,是否自动隐藏。受minSideBarWidth属性方法影响,minSideBarWidth属性方法未设置值使用默认值。 210e41f4b71Sopenharmony_ci 211e41f4b71Sopenharmony_ci拖拽过程中判断是否要自动隐藏。小于最小宽度时需要阻尼效果触发隐藏(越界一段距离)。 212e41f4b71Sopenharmony_ci 213e41f4b71Sopenharmony_ci**原子化服务API:** 从API version 11开始,该接口支持在原子化服务中使用。 214e41f4b71Sopenharmony_ci 215e41f4b71Sopenharmony_ci**系统能力:** SystemCapability.ArkUI.ArkUI.Full 216e41f4b71Sopenharmony_ci 217e41f4b71Sopenharmony_ci**参数:** 218e41f4b71Sopenharmony_ci 219e41f4b71Sopenharmony_ci| 参数名 | 类型 | 必填 | 说明 | 220e41f4b71Sopenharmony_ci| ------ | ------- | ---- | ------------------------------------------------------------ | 221e41f4b71Sopenharmony_ci| value | boolean | 是 | 侧边栏拖拽到小于最小宽度后,是否自动隐藏。<br/>true:会自动隐藏<br/>false:不会自动隐藏<br/>默认值:true | 222e41f4b71Sopenharmony_ci 223e41f4b71Sopenharmony_ci### sideBarPosition<sup>9+</sup> 224e41f4b71Sopenharmony_ci 225e41f4b71Sopenharmony_cisideBarPosition(value: SideBarPosition) 226e41f4b71Sopenharmony_ci 227e41f4b71Sopenharmony_ci设置侧边栏显示位置。 228e41f4b71Sopenharmony_ci 229e41f4b71Sopenharmony_ci**原子化服务API:** 从API version 11开始,该接口支持在原子化服务中使用。 230e41f4b71Sopenharmony_ci 231e41f4b71Sopenharmony_ci**系统能力:** SystemCapability.ArkUI.ArkUI.Full 232e41f4b71Sopenharmony_ci 233e41f4b71Sopenharmony_ci**参数:** 234e41f4b71Sopenharmony_ci 235e41f4b71Sopenharmony_ci| 参数名 | 类型 | 必填 | 说明 | 236e41f4b71Sopenharmony_ci| ------ | -------------------------------------------- | ---- | -------------------------------------------------- | 237e41f4b71Sopenharmony_ci| value | [SideBarPosition](#sidebarposition9枚举说明) | 是 | 侧边栏显示位置。<br/>默认值:SideBarPosition.Start | 238e41f4b71Sopenharmony_ci 239e41f4b71Sopenharmony_ci### divider<sup>10+</sup> 240e41f4b71Sopenharmony_ci 241e41f4b71Sopenharmony_cidivider(value: DividerStyle | null) 242e41f4b71Sopenharmony_ci 243e41f4b71Sopenharmony_ci设置分割线的样式。 244e41f4b71Sopenharmony_ci 245e41f4b71Sopenharmony_ci**原子化服务API:** 从API version 11开始,该接口支持在原子化服务中使用。 246e41f4b71Sopenharmony_ci 247e41f4b71Sopenharmony_ci**系统能力:** SystemCapability.ArkUI.ArkUI.Full 248e41f4b71Sopenharmony_ci 249e41f4b71Sopenharmony_ci**参数:** 250e41f4b71Sopenharmony_ci 251e41f4b71Sopenharmony_ci| 参数名 | 类型 | 必填 | 说明 | 252e41f4b71Sopenharmony_ci| ------ | --------------------------------------------------------- | ---- | ------------------------------------------------------------ | 253e41f4b71Sopenharmony_ci| value | [DividerStyle](#dividerstyle10对象说明) \| null | 是 | 分割线的样式。<br/>默认为DividerStyle:显示分割线。<br/>- null或undefined:行为不做处理,分割线样式与默认值保持一致。<br/>**说明:** <br/>API version 11及以下版本,null效果为不显示分割线。| 254e41f4b71Sopenharmony_ci 255e41f4b71Sopenharmony_ci### minContentWidth<sup>10+</sup> 256e41f4b71Sopenharmony_ci 257e41f4b71Sopenharmony_ciminContentWidth(value: Dimension) 258e41f4b71Sopenharmony_ci 259e41f4b71Sopenharmony_ci设置SideBarContainer组件内容区可显示的最小宽度。 260e41f4b71Sopenharmony_ci 261e41f4b71Sopenharmony_ci设置为小于0,内容区显示的最小宽度为360vp,未设置该属性时,组件内容区的可缩小到0。 262e41f4b71Sopenharmony_ci 263e41f4b71Sopenharmony_ciEmbed场景下,增大组件尺寸时仅增大内容区的尺寸。 264e41f4b71Sopenharmony_ci 265e41f4b71Sopenharmony_ci缩小组件尺寸时,先缩小内容区的尺寸至minContentWidth。继续缩小组件尺寸时,保持内容区宽度minContentWidth不变,优先缩小侧边栏的尺寸。 266e41f4b71Sopenharmony_ci 267e41f4b71Sopenharmony_ci当缩小侧边栏的尺寸至minSideBarWidth后,继续缩小组件尺寸时, 268e41f4b71Sopenharmony_ci 269e41f4b71Sopenharmony_ci- 如果autoHide属性为false,则会保持侧边栏宽度minSideBarWidth和内容区宽度minContentWidth不变,但内容区会被截断显示; 270e41f4b71Sopenharmony_ci- 如果autoHide属性为true,则会优先隐藏侧边栏,然后继续缩小至内容区宽度minContentWidth后,内容区宽度保持不变,但内容区会被截断显示。 271e41f4b71Sopenharmony_ci 272e41f4b71Sopenharmony_ciminContentWidth优先于侧边栏的maxSideBarWidth与sideBarWidth属性,minContentWidth未设置时默认值优先级低于设置的minSideBarWidth与maxSideBarWidth属性。 273e41f4b71Sopenharmony_ci 274e41f4b71Sopenharmony_ci**原子化服务API:** 从API version 11开始,该接口支持在原子化服务中使用。 275e41f4b71Sopenharmony_ci 276e41f4b71Sopenharmony_ci**系统能力:** SystemCapability.ArkUI.ArkUI.Full 277e41f4b71Sopenharmony_ci 278e41f4b71Sopenharmony_ci**参数:** 279e41f4b71Sopenharmony_ci 280e41f4b71Sopenharmony_ci| 参数名 | 类型 | 必填 | 说明 | 281e41f4b71Sopenharmony_ci| ------ | ------------------------------------ | ---- | ------------------------------------------------------------ | 282e41f4b71Sopenharmony_ci| value | [Dimension](ts-types.md#dimension10) | 是 | SideBarContainer组件内容区可显示的最小宽度。<br/>默认值:360vp<br/>单位:vp | 283e41f4b71Sopenharmony_ci 284e41f4b71Sopenharmony_ci## ButtonStyle对象说明 285e41f4b71Sopenharmony_ci 286e41f4b71Sopenharmony_ci**原子化服务API:** 从API version 11开始,该接口支持在原子化服务中使用。 287e41f4b71Sopenharmony_ci 288e41f4b71Sopenharmony_ci**系统能力:** SystemCapability.ArkUI.ArkUI.Full 289e41f4b71Sopenharmony_ci 290e41f4b71Sopenharmony_ci| 名称 | 类型 | 必填 | 说明 | 291e41f4b71Sopenharmony_ci| -------- | -------- | -------- | -------- | 292e41f4b71Sopenharmony_ci| left | number | 否 | 设置侧边栏控制按钮距离容器左界限的间距。<br/>默认值:16vp<br>单位:vp | 293e41f4b71Sopenharmony_ci| top | number | 否 | 设置侧边栏控制按钮距离容器上界限的间距。<br/>默认值:48vp<br/>单位:vp | 294e41f4b71Sopenharmony_ci| width | number | 否 | 设置侧边栏控制按钮的宽度。<br/>默认值:<br/>API version 9及之前版本:32vp<br/>从API version 10开始:24vp<br/>单位:vp | 295e41f4b71Sopenharmony_ci| height | number | 否 | 设置侧边栏控制按钮的高度。<br/>默认值:<br/>API version 9及之前版本:32vp<br/>从API version 10开始:24vp<br/>单位:vp | 296e41f4b71Sopenharmony_ci| icons | {<br/>shown: string \| PixelMap \| [Resource](ts-types.md) ;<br/>hidden: string \| PixelMap \| [Resource](ts-types.md) ;<br/>switching?: string \| PixelMap \| [Resource](ts-types.md) <br/>} | 否 | 设置侧边栏控制按钮的图标:<br/> </p> - shown: 设置侧边栏显示时控制按钮的图标。<br>**说明:** <br>资源获取错误时,使用默认图标。<br/>- hidden: 设置侧边栏隐藏时控制按钮的图标。<br>- switching:设置侧边栏显示和隐藏状态切换时控制按钮的图标。 | 297e41f4b71Sopenharmony_ci 298e41f4b71Sopenharmony_ci## SideBarPosition<sup>9+</sup>枚举说明 299e41f4b71Sopenharmony_ci 300e41f4b71Sopenharmony_ci侧边栏显示位置。 301e41f4b71Sopenharmony_ci 302e41f4b71Sopenharmony_ci**原子化服务API:** 从API version 11开始,该接口支持在原子化服务中使用。 303e41f4b71Sopenharmony_ci 304e41f4b71Sopenharmony_ci**系统能力:** SystemCapability.ArkUI.ArkUI.Full 305e41f4b71Sopenharmony_ci 306e41f4b71Sopenharmony_ci| 名称 | 说明 | 307e41f4b71Sopenharmony_ci| -------- | -------- | 308e41f4b71Sopenharmony_ci| Start | 侧边栏位于容器左侧。 | 309e41f4b71Sopenharmony_ci| End | 侧边栏位于容器右侧。 | 310e41f4b71Sopenharmony_ci 311e41f4b71Sopenharmony_ci## DividerStyle<sup>10+</sup>对象说明 312e41f4b71Sopenharmony_ci 313e41f4b71Sopenharmony_ci**原子化服务API:** 从API version 11开始,该接口支持在原子化服务中使用。 314e41f4b71Sopenharmony_ci 315e41f4b71Sopenharmony_ci**系统能力:** SystemCapability.ArkUI.ArkUI.Full 316e41f4b71Sopenharmony_ci 317e41f4b71Sopenharmony_ci| 名称 | 类型 | 必填 | 说明 | 318e41f4b71Sopenharmony_ci| ----------- | ------------- | ---- | ---------------------------------------- | 319e41f4b71Sopenharmony_ci| strokeWidth | [Length](ts-types.md#length) | 是 | 分割线的线宽。<br/>默认值:1vp | 320e41f4b71Sopenharmony_ci| color | [ResourceColor](ts-types.md#resourcecolor) | 否 | 分割线的颜色。<br/>默认值:#000000,3% | 321e41f4b71Sopenharmony_ci| startMargin | [Length](ts-types.md#length) | 否 | 分割线与侧边栏顶端的距离。<br/>默认值:0 | 322e41f4b71Sopenharmony_ci| endMargin | [Length](ts-types.md#length) | 否 | 分割线与侧边栏底端的距离。<br/>默认值:0 | 323e41f4b71Sopenharmony_ci> **说明:** 324e41f4b71Sopenharmony_ci> 325e41f4b71Sopenharmony_ci> 针对侧边栏子组件设置[通用属性宽高](ts-universal-attributes-size.md)时,宽高都不生效。 326e41f4b71Sopenharmony_ci> 针对侧边栏内容区设置[通用属性宽高](ts-universal-attributes-size.md)时,宽高都不生效,默认占满SideBarContainer的剩余空间。 327e41f4b71Sopenharmony_ci> 328e41f4b71Sopenharmony_ci> 当showSideBar属性未设置时,依据组件大小进行自动显示: 329e41f4b71Sopenharmony_ci> 330e41f4b71Sopenharmony_ci> - 小于minSideBarWidth + minContentWidth:默认不显示侧边栏。 331e41f4b71Sopenharmony_ci> - 大于等于minSideBarWidth + minContentWidth:默认显示侧边栏。 332e41f4b71Sopenharmony_ci 333e41f4b71Sopenharmony_ci## 事件 334e41f4b71Sopenharmony_ci 335e41f4b71Sopenharmony_ci除支持[通用事件](ts-universal-events-click.md)外,还支持以下事件: 336e41f4b71Sopenharmony_ci 337e41f4b71Sopenharmony_ci### onChange 338e41f4b71Sopenharmony_ci 339e41f4b71Sopenharmony_cionChange(callback: (value: boolean) => void) 340e41f4b71Sopenharmony_ci 341e41f4b71Sopenharmony_ci当侧边栏的状态在显示和隐藏之间切换时触发回调。 342e41f4b71Sopenharmony_ci 343e41f4b71Sopenharmony_ci触发该事件的条件: 344e41f4b71Sopenharmony_ci 345e41f4b71Sopenharmony_ci1、showSideBar属性值变换时; 346e41f4b71Sopenharmony_ci 347e41f4b71Sopenharmony_ci2、showSideBar属性自适应行为变化时; 348e41f4b71Sopenharmony_ci 349e41f4b71Sopenharmony_ci3、分割线拖拽触发autoHide时。 350e41f4b71Sopenharmony_ci 351e41f4b71Sopenharmony_ci**原子化服务API:** 从API version 11开始,该接口支持在原子化服务中使用。 352e41f4b71Sopenharmony_ci 353e41f4b71Sopenharmony_ci**系统能力:** SystemCapability.ArkUI.ArkUI.Full 354e41f4b71Sopenharmony_ci 355e41f4b71Sopenharmony_ci**参数:** 356e41f4b71Sopenharmony_ci 357e41f4b71Sopenharmony_ci| 参数名 | 类型 | 必填 | 说明 | 358e41f4b71Sopenharmony_ci| ------ | ------- | ---- | ----------------------------- | 359e41f4b71Sopenharmony_ci| value | boolean | 是 | true表示显示,false表示隐藏。 | 360e41f4b71Sopenharmony_ci 361e41f4b71Sopenharmony_ci 362e41f4b71Sopenharmony_ci## 示例 363e41f4b71Sopenharmony_ci 364e41f4b71Sopenharmony_ci```ts 365e41f4b71Sopenharmony_ci// xxx.ets 366e41f4b71Sopenharmony_ci@Entry 367e41f4b71Sopenharmony_ci@Component 368e41f4b71Sopenharmony_cistruct SideBarContainerExample { 369e41f4b71Sopenharmony_ci normalIcon: Resource = $r("app.media.icon") 370e41f4b71Sopenharmony_ci selectedIcon: Resource = $r("app.media.icon") 371e41f4b71Sopenharmony_ci @State arr: number[] = [1, 2, 3] 372e41f4b71Sopenharmony_ci @State current: number = 1 373e41f4b71Sopenharmony_ci 374e41f4b71Sopenharmony_ci build() { 375e41f4b71Sopenharmony_ci SideBarContainer(SideBarContainerType.Embed) { 376e41f4b71Sopenharmony_ci Column() { 377e41f4b71Sopenharmony_ci ForEach(this.arr, (item: number) => { 378e41f4b71Sopenharmony_ci Column({ space: 5 }) { 379e41f4b71Sopenharmony_ci Image(this.current === item ? this.selectedIcon : this.normalIcon).width(64).height(64) 380e41f4b71Sopenharmony_ci Text("Index0" + item) 381e41f4b71Sopenharmony_ci .fontSize(25) 382e41f4b71Sopenharmony_ci .fontColor(this.current === item ? '#0A59F7' : '#999') 383e41f4b71Sopenharmony_ci .fontFamily('source-sans-pro,cursive,sans-serif') 384e41f4b71Sopenharmony_ci } 385e41f4b71Sopenharmony_ci .onClick(() => { 386e41f4b71Sopenharmony_ci this.current = item 387e41f4b71Sopenharmony_ci }) 388e41f4b71Sopenharmony_ci }, (item: string) => item) 389e41f4b71Sopenharmony_ci }.width('100%') 390e41f4b71Sopenharmony_ci .justifyContent(FlexAlign.SpaceEvenly) 391e41f4b71Sopenharmony_ci .backgroundColor('#19000000') 392e41f4b71Sopenharmony_ci 393e41f4b71Sopenharmony_ci Column() { 394e41f4b71Sopenharmony_ci Text('SideBarContainer content text1').fontSize(25) 395e41f4b71Sopenharmony_ci Text('SideBarContainer content text2').fontSize(25) 396e41f4b71Sopenharmony_ci } 397e41f4b71Sopenharmony_ci .margin({ top: 50, left: 20, right: 30 }) 398e41f4b71Sopenharmony_ci } 399e41f4b71Sopenharmony_ci .controlButton({ 400e41f4b71Sopenharmony_ci icons: { 401e41f4b71Sopenharmony_ci hidden: $r('app.media.drawer'), 402e41f4b71Sopenharmony_ci shown: $r('app.media.drawer'), 403e41f4b71Sopenharmony_ci switching: $r('app.media.drawer') 404e41f4b71Sopenharmony_ci } 405e41f4b71Sopenharmony_ci }) 406e41f4b71Sopenharmony_ci .sideBarWidth(150) 407e41f4b71Sopenharmony_ci .minSideBarWidth(50) 408e41f4b71Sopenharmony_ci .maxSideBarWidth(300) 409e41f4b71Sopenharmony_ci .minContentWidth(0) 410e41f4b71Sopenharmony_ci .onChange((value: boolean) => { 411e41f4b71Sopenharmony_ci console.info('status:' + value) 412e41f4b71Sopenharmony_ci }) 413e41f4b71Sopenharmony_ci .divider({ strokeWidth: '1vp', color: Color.Gray, startMargin: '4vp', endMargin: '4vp' }) 414e41f4b71Sopenharmony_ci } 415e41f4b71Sopenharmony_ci} 416e41f4b71Sopenharmony_ci``` 417e41f4b71Sopenharmony_ci 418e41f4b71Sopenharmony_ci 419