菜单控制(系统接口)
为组件绑定弹出式菜单,支持长按、点击或鼠标右键来触发菜单的弹出,菜单项以垂直列表形式显示。
说明:
该组件从API version 7开始支持。后续版本如有新增内容,则采用上角标单独标记该内容的起始版本。
本文仅介绍当前模块的系统接口,其他公开接口参见菜单控制。
ContextMenuOptions10+
菜单项的信息。
系统能力: SystemCapability.ArkUI.ArkUI.Full
| 名称 | 类型 | 只读 | 可选 | 说明 |
|---|---|---|---|---|
| systemMaterial23+ | SystemUiMaterial | 否 | 是 | 设置菜单的系统材质。不同系统材质对应不同的属性影响效果,该接口影响背景色backgroundColor、边框颜色borderColor、边框宽度borderWidth、阴影shadow,不建议与上述接口一起使用。材质设置为非法值、undefined时,按照不设置系统材质处理。 默认值: undefined 系统接口: 此接口为系统接口。 原子化服务API: 从API version 23开始,该接口支持在原子化服务中使用。 模型约束: 此接口仅可在Stage模型下使用。 |
示例
示例1(设置菜单的系统材质)
该示例通过设置ContextMenuOptions中的systemMaterial属性,实现了菜单的系统材质视效。
从API version 23开始,在ContextMenuOptions中新增了systemMaterial属性。
import { uiMaterial } from '@kit.ArkUI';
@Entry
@Component
struct Index {
@Builder
MyMenu() {
Menu() {
MenuItem({ startIcon: this.iconStr, content: '菜单选项' })
MenuItem({ startIcon: this.iconStr, content: '菜单选项' })
MenuItem({ startIcon: this.iconStr, content: '菜单选项' })
}
}
build() {
Column() {
Button('bindMenu with THICK material')
.bindMenu(this.MyMenu, {
systemMaterial: new uiMaterial.Material({ type: uiMaterial.MaterialType.SEMI_TRANSPARENT })
})
}
// $r('app.media.img')需要替换为开发者所需的图像资源文件。
.backgroundImage($r('app.media.img'))
}
}
未设置系统材质
设置系统材质
你可能感兴趣的鸿蒙文章
openharmony 鸿蒙 ts-drawing-components-shape
openharmony 鸿蒙 ts-universal-attributes-sharp-clipping
openharmony 鸿蒙 ts-universal-attributes-toolbar
openharmony 鸿蒙 ts-container-lazyvgridlayout
openharmony 鸿蒙 ohos-arkui-advanced-FoldSplitContainer
openharmony 鸿蒙 ts-methods-calendarpicker-dialog
openharmony 鸿蒙 ts-uicommonevent
openharmony 鸿蒙 ts-basic-gestures-tapgesture