diff --git a/zh-cn/application-dev/reference/arkui-ts/ts-basic-components-menu.md b/zh-cn/application-dev/reference/arkui-ts/ts-basic-components-menu.md index b04f78697cc9f4bcca493878df516d27a27c79cf..9070f4d4fc70a81d0baa2dbc8cdb74aacb8706f6 100644 --- a/zh-cn/application-dev/reference/arkui-ts/ts-basic-components-menu.md +++ b/zh-cn/application-dev/reference/arkui-ts/ts-basic-components-menu.md @@ -18,6 +18,15 @@ Menu() 作为菜单的固定容器,无参数。 +> **说明:** +> 菜单和菜单项宽度计算规则: +> +> 布局过程中,期望每个菜单项的宽度一致。若子组件设置了宽度,则以[尺寸计算规则](ts-universal-attributes-size.md#constraintsize取值对widthheight影响)为准。 +> +> 不设置宽度的情况:菜单组件会对子组件MenuItem、MenuItemGroup设置默认2栅格的宽度,若菜单项内容区比2栅格宽,则会自适应撑开。 +> +> 设置宽度的情况:菜单组件会对子组件MenuItem、MenuItemGroup设置减去padding后的固定宽度。 + ## 属性 除支持[通用属性](ts-universal-attributes-size.md)外,还支持以下属性: diff --git a/zh-cn/release-notes/changelogs/OpenHarmony_4.0.11.3/changelogs-arkui.md b/zh-cn/release-notes/changelogs/OpenHarmony_4.0.11.3/changelogs-arkui.md index c950d8e94a1c53c714f83144f0035a00046228b9..f64fc71386fba12fdbcac7915291c7b93e66fb78 100644 --- a/zh-cn/release-notes/changelogs/OpenHarmony_4.0.11.3/changelogs-arkui.md +++ b/zh-cn/release-notes/changelogs/OpenHarmony_4.0.11.3/changelogs-arkui.md @@ -14,4 +14,48 @@ 变更前,开发者在Search组件接口中只设置placeholder不设置value时,动态改变Search的属性,Search中的内容会被清空。
变更后,开发者在Search组件接口中只设置placeholder不设置value时,动态改变Search的属性,Search中的内容会保持不变。 -说明:变更后为正常使用search的期望行为。 \ No newline at end of file +说明:变更后为正常使用search的期望行为。 + +## cl.arkui.3 Menu组件宽度规格变更 + +[Menu](../../../application-dev/reference/arkui-ts/ts-basic-components-menu.md)宽度规格变更,未设置宽度时,按默认2栅格显示;设置宽度时,Menu内容根据设置的宽度进行自适应布局。Menu组件自带默认64vp的最小宽度。 + +**变更影响** + +1. Menu宽度默认2栅格显示,若菜单项[MenuItem](../../../application-dev/reference/arkui-ts/ts-basic-components-menuitem.md)内容区比2栅格宽,则会自适应撑开。 +2. 最小宽度64vp。开发者可通过[constraintSize](../../../application-dev/reference/arkui-ts/ts-universal-attributes-size.md)属性修改最小宽度限制。 + +**关键接口/组件变更** + +- [Menu组件](../../../application-dev/reference/arkui-ts/ts-basic-components-menu.md) + +**适配指导** + +若开发者期望菜单显示宽度小于64vp或无最小宽度限制,修改constraintSize覆盖默认的最小宽度。 + +**示例:** +```ts +@Entry +@Component +struct Index { + @Builder + MyMenu(){ + Menu() { + MenuItem({ startIcon: $r("app.media.icon"), content: "菜单选项" }) + } + .width(30) + .constraintSize({minWidth: 0}) // 覆盖系统默认的64vp最小宽度 + } + + build() { + Row() { + Column() { + Text('click to show menu') + } + .bindMenu(this.MyMenu) + .width('100%') + } + .height('100%') + } +} +```