
OpenHarmony应用开发-全局UI方法 弹窗/菜单
版本:v3.2 Release
警告弹窗
显示警告弹窗组件,可设置文本内容与响应回调。
说明:
从API Version 7开始支持。后续版本如有新增内容,则采用上角标单独标记该内容的起始版本。
属性
名称 | 参数类型 | 参数描述 |
show | AlertDialogParamWithConfirm | AlertDialogParamWithButtons | 定义并显示AlertDialog组件。 |
AlertDialogParamWithConfirm对象说明
参数名 | 参数类型 | 必填 | 参数描述 |
title | 否 | 弹窗标题。 | |
message | 是 | 弹窗内容。 | |
autoCancel | boolean | 否 | 点击遮障层时,是否关闭弹窗。 默认值:true |
confirm | { value: ResourceStr, fontColor?: ResourceColor, backgroundColor?: ResourceColor, action: () => void } | 否 | 确认按钮的文本内容、文本色、按钮背景色和点击回调。 |
cancel | () => void | 否 | 点击遮障层关闭dialog时的回调。 |
alignment | 否 | 弹窗在竖直方向上的对齐方式。 默认值:DialogAlignment.Default | |
offset | Offset | 否 | 弹窗相对alignment所在位置的偏移量。 |
gridCount | number | 否 | 弹窗容器宽度所占用栅格数。 |
AlertDialogParamWithButtons对象说明
参数名 | 参数类型 | 必填 | 参数描述 |
title | 否 | 弹窗标题。 | |
message | 是 | 弹窗内容。 | |
autoCancel | boolean | 否 | 点击遮障层时,是否关闭弹窗。 默认值:true |
primaryButton | { value: ResourceStr, fontColor?: ResourceColor, backgroundColor?: ResourceColor, action: () => void; } | 否 | 按钮的文本内容、文本色、按钮背景色和点击回调。 |
secondaryButton | { value: ResourceStr, fontColor?: ResourceColor, backgroundColor?: ResourceColor, action: () => void; } | 否 | 按钮的文本内容、文本色、按钮背景色和点击回调。 |
cancel | () => void | 否 | 点击遮障层关闭dialog时的回调。 |
alignment | 否 | 弹窗在竖直方向上的对齐方式。 默认值:DialogAlignment.Default | |
offset | Offset | 否 | 弹窗相对alignment所在位置的偏移量。 |
gridCount | number | 否 | 弹窗容器宽度所占用栅格数。 |
DialogAlignment枚举说明
名称 | 描述 |
Top | 垂直顶部对齐。 |
Center | 垂直居中对齐。 |
Bottom | 垂直底部对齐。 |
Default | 默认对齐。 |
TopStart8+ | 左上对齐。 |
TopEnd8+ | 右上对齐。 |
CenterStart8+ | 左中对齐。 |
CenterEnd8+ | 右中对齐。 |
BottomStart8+ | 左下对齐。 |
BottomEnd8+ | 右下对齐。 |
示例
列表选择弹窗
列表弹窗。
说明: 从API Version 8开始支持。后续版本如有新增内容,则采用上角标单独标记该内容的起始版本。
ActionSheet.show
show(value: { title: string | Resource, message: string | Resource, confirm?: {value: string | Resource, action:() => void}, cancel?:()=>void, sheets: Array<SheetInfo>, autoCancel?:boolean, alignment?: DialogAlignment, offset?: { dx: number | string | Resource; dy: number | string | Resource } })
定义列表弹窗并弹出。
参数:
参数名 | 参数类型 | 必填 | 参数描述 |
title | Resource | string | 是 | 弹窗标题。 |
message | Resource | string | 是 | 弹窗内容。 |
autoCancel | boolean | 否 | 点击遮障层时,是否关闭弹窗。 默认值:true |
confirm | { value: ResourceStr, action: () => void } | 否 | 确认按钮的文本内容和点击回调。 默认值: value:按钮文本内容。 action: 按钮选中时的回调。 |
cancel | () => void | 否 | 点击遮障层关闭dialog时的回调。 |
alignment | 否 | 弹窗在竖直方向上的对齐方式。 默认值:DialogAlignment.Bottom | |
offset | { dx: Length, dy: Length } | 否 | 弹窗相对alignment所在位置的偏移量。{ dx: 0, dy: 0 } |
sheets | Array<SheetInfo> | 是 | 设置选项内容,每个选择项支持设置图片、文本和选中的回调。 |
SheetInfo接口说明
参数名 | 参数类型 | 必填 | 参数描述 |
title | 是 | 选项的文本内容。 | |
icon | 否 | 选项的图标,默认无图标显示。 | |
action | ()=>void | 是 | 选项选中的回调。 |
示例
自定义弹窗
通过CustomDialogController类显示自定义弹窗。使用弹窗组件时,可优先考虑自定义弹窗,便于自定义弹窗的样式与内容。
说明:
从API Version 7开始支持。后续版本如有新增内容,则采用上角标单独标记该内容的起始版本。
接口
CustomDialogController(value:{builder: CustomDialog, cancel?: () => void, autoCancel?: boolean, alignment?: DialogAlignment, offset?: Offset, customStyle?: boolean, gridCount?: number, maskColor?: ResourceColor, openAnimation?: AnimateParam, closeAniamtion?: AnimateParam})
参数:
参数名 | 参数类型 | 必填 | 参数描述 |
builder | CustomDialog | 是 | 自定义弹窗内容构造器。 |
cancel | () => void | 否 | 点击遮障层退出时的回调。 |
autoCancel | boolean | 否 | 是否允许点击遮障层退出。 默认值:true |
alignment | 否 | 弹窗在竖直方向上的对齐方式。 默认值:DialogAlignment.Default | |
offset | Offset | 否 | 弹窗相对alignment所在位置的偏移量。 |
customStyle | boolean | 否 | 弹窗容器样式是否自定义。 默认值:false,弹窗容器的宽度根据栅格系统自适应,不跟随子节点;高度自适应子节点,最大为窗口高度的90%;圆角为24vp。 |
gridCount8+ | number | 否 | 弹窗宽度占栅格宽度的个数。 默认值为4,异常值按默认值处理,最大栅格数为系统最大栅格数。 |
CustomDialogController
导入对象
说明:CustomDialogController仅在作为@CustomDialog和@Component struct的成员变量,且在@Component struct内部定义时赋值才有效,具体用法可看下方示例。
open()
open(): void
显示自定义弹窗内容,若已显示,则不生效。
close
close(): void
关闭显示的自定义弹窗,若已关闭,则不生效。
示例
日期滑动选择器弹窗
根据指定的日期范围创建日期滑动选择器,展示在弹窗上。
说明:
该组件从API Version 8开始支持。后续版本如有新增内容,则采用上角标单独标记该内容的起始版本。
DatePickerDialog.show
show(options?: DatePickerDialogOptions)
定义日期滑动选择器弹窗并弹出。
DatePickerDialogOptions参数:
参数名 | 参数类型 | 必填 | 默认值 | 参数描述 |
start | Date | 否 | Date(‘1970-1-1’) | 设置选择器的起始日期。 |
end | Date | 否 | Date(‘2100-12-31’) | 设置选择器的结束日期。 |
selected | Date | 否 | 当前系统日期 | 设置当前选中的日期。 |
lunar | boolean | 否 | false | 日期是否显示为农历。 |
onAccept | (value: DatePickerResult) => void | 否 | - | 点击弹窗中的“确定”按钮时触发该回调。 |
onCancel | () => void | 否 | - | 点击弹窗中的“取消”按钮时触发该回调。 |
onChange | (value: DatePickerResult) => void | 否 | - | 滑动弹窗中的滑动选择器使当前选中项改变时触发该回调。 |
示例
时间滑动选择器弹窗
以24小时的时间区间创建时间滑动选择器,展示在弹窗上。
说明:
该组件从API Version 8开始支持。后续版本如有新增内容,则采用上角标单独标记该内容的起始版本。
TimePickerDialog.show
show(options?: TimePickerDialogOptions)
定义时间滑动选择器弹窗并弹出。
TimePickerDialogOptions参数:
参数名 | 参数类型 | 必填 | 参数描述 |
selected | Date | 否 | 设置当前选中的时间。 默认值:当前系统时间 |
useMilitaryTime | boolean | 否 | 展示时间是否为24小时制,默认为12小时制。 默认值:false |
onAccept | (value: TimePickerResult) => void | 否 | 点击弹窗中的“确定”按钮时触发该回调。 |
onCancel | () => void | 否 | 点击弹窗中的“取消”按钮时触发该回调。 |
onChange | (value: TimePickerResult) => void | 否 | 滑动弹窗中的选择器使当前选中时间改变时触发该回调。 |
示例
文本滑动选择器弹窗
根据指定的选择范围创建文本选择器,展示在弹窗上。
说明:
该组件从API Version 8开始支持。后续版本如有新增内容,则采用上角标单独标记该内容的起始版本。
TextPickerDialog.show
show(options?: TextPickerDialogOptions)
定义文本滑动选择器弹窗并弹出。
TextPickerDialogOptions参数:
参数名 | 参数类型 | 必填 | 参数描述 |
range | string[] | Resource | 是 | 设置文本选择器的选择范围。 |
selected | number | 否 | 设置选中项的索引值。 默认值:0 |
value | string | 否 | 设置选中项的文本内容。当设置了selected参数时,该参数不生效。如果设置的value值不在range范围内,则默认取range第一个元素。 |
defaultPickerItemHeight | number | string | 否 | 设置选择器中选项的高度。 |
onAccept | (value: TextPickerResult) => void | 否 | 点击弹窗中的“确定”按钮时触发该回调。 |
onCancel | () => void | 否 | 点击弹窗中的“取消”按钮时触发该回调。 |
onChange | (value: TextPickerResult) => void | 否 | 滑动弹窗中的选择器使当前选中项改变时触发该回调。 |
TextPickerResult对象说明
名称 | 类型 | 描述 |
value | string | 选中项的文本内容。 |
index | number | 选中项在选择范围数组中的索引值。 |
示例
菜单
在页面范围内关闭通过bindContextMenu属性绑定的菜单。
说明:
从API Version 8开始支持。后续版本如有新增内容,则采用上角标单独标记该内容的起始版本。
ContextMenu.close
方法 | 描述 |
close(): void | 可以通过该方法在页面范围内关闭通过bindContextMenu给组件绑定的菜单。 |
示例
