openharmony 鸿蒙 capi-arkui-nativemodule-arkui-nativedialogapi-3

2026-08-25 浏览 (1)

ArkUI_NativeDialogAPI_3

typedef struct {...} ArkUI_NativeDialogAPI_3

概述

ArkUI提供的Native侧自定义弹窗接口集合。

起始版本: 19

相关模块: ArkUI_NativeModule

所在头文件: native_dialog.h

汇总

成员变量

名称描述
ArkUI_NativeDialogAPI_1 nativeDialogAPI1ArkUI提供的Native侧自定义弹窗接口集合,范围是ArkUI_NativeDialogAPI_1
起始版本: 19
ArkUI_NativeDialogAPI_2 nativeDialogAPI2ArkUI提供的Native侧自定义弹窗接口集合,范围是ArkUI_NativeDialogAPI_2
起始版本: 19

成员函数

名称描述
int32_t (*setLevelOrder)(ArkUI_NativeDialogHandle handle, double levelOrder)设置自定义弹窗显示的顺序。
int32_t (*registerOnWillAppear)(ArkUI_NativeDialogHandle handle, void* userData, void (*callback)(void* userData))注册自定义弹窗显示之前的回调函数。
int32_t (*registerOnDidAppear)(ArkUI_NativeDialogHandle handle, void* userData, void (*callback)(void* userData))注册自定义弹窗显示之后的回调函数。
int32_t (*registerOnWillDisappear)(ArkUI_NativeDialogHandle handle, void* userData, void (*callback)(void* userData))注册自定义弹窗关闭之前的回调函数。
int32_t (*registerOnDidDisappear)(ArkUI_NativeDialogHandle handle, void* userData, void (*callback)(void* userData))注册自定义弹窗关闭之后的回调函数。
int32_t (*setBorderWidth)(ArkUI_NativeDialogHandle handle, float top, float right, float bottom, float left, ArkUI_LengthMetricUnit unit)设置自定义弹窗的边框宽度。
int32_t (*setBorderColor)(ArkUI_NativeDialogHandle handle, uint32_t top, uint32_t right, uint32_t bottom, uint32_t left)设置自定义弹窗的边框颜色。
int32_t (*setBorderStyle)(ArkUI_NativeDialogHandle handle, int32_t top, int32_t right, int32_t bottom, int32_t left)设置自定义弹窗的边框样式。
int32_t (*setWidth)(ArkUI_NativeDialogHandle handle, float width, ArkUI_LengthMetricUnit unit)设置自定义弹窗的背板宽度。
int32_t (*setHeight)(ArkUI_NativeDialogHandle handle, float height, ArkUI_LengthMetricUnit unit)设置自定义弹窗的背板高度。
int32_t (*setShadow)(ArkUI_NativeDialogHandle handle, ArkUI_ShadowStyle shadow)设置自定义弹窗的背板阴影。
int32_t (*setCustomShadow)(ArkUI_NativeDialogHandle handle, const ArkUI_AttributeItem* customShadow)设置自定义弹窗的背板阴影。
int32_t (*setBackgroundBlurStyle)(ArkUI_NativeDialogHandle handle, ArkUI_BlurStyle blurStyle)设置自定义弹窗的背板模糊材质。
int32_t (*setKeyboardAvoidMode)(ArkUI_NativeDialogHandle handle, ArkUI_KeyboardAvoidMode keyboardAvoidMode)设置自定义弹窗避让键盘模式。
int32_t (*enableHoverMode)(ArkUI_NativeDialogHandle handle, bool enableHoverMode)设置自定义弹窗是否响应悬停态。
int32_t (*setHoverModeArea)(ArkUI_NativeDialogHandle handle, ArkUI_HoverModeAreaType hoverModeAreaType)设置悬停态下自定义弹窗默认展示区域。
int32_t (*setFocusable)(ArkUI_NativeDialogHandle handle, bool focusable)设置自定义弹窗是否获取焦点。
int32_t (*setBackgroundBlurStyleOptions)(ArkUI_NativeDialogHandle handle, const ArkUI_AttributeItem* backgroundBlurStyleOptions)设置自定义弹窗的背景模糊效果。
int32_t (*setBackgroundEffect)(ArkUI_NativeDialogHandle handle, const ArkUI_AttributeItem* backgroundEffect)设置自定义弹窗的背景效果参数。

成员函数说明

setLevelOrder()

int32_t (*setLevelOrder)(ArkUI_NativeDialogHandle handle, double levelOrder)

描述:

设置自定义弹窗显示的顺序。

说明:

setLevelOrder方法需要在调用show之前调用。

起始版本: 19

参数:

参数项描述
ArkUI_NativeDialogHandle handle指向自定义弹窗控制器的指针。
double levelOrder自定义弹窗显示的顺序。
默认值:0,取值范围:[-100000.0, 100000.0]。超出取值范围属性不生效。

返回:

类型说明
int32_t错误码。
ARKUI_ERROR_CODE_NO_ERROR 成功。
ARKUI_ERROR_CODE_PARAM_INVALID 函数参数异常。

registerOnWillAppear()

int32_t (*registerOnWillAppear)(ArkUI_NativeDialogHandle handle, void* userData, void (*callback)(void* userData))

描述:

注册自定义弹窗显示之前的回调函数。

说明:

registerOnWillAppear方法需要在调用show之前调用。

起始版本: 19

参数:

参数项描述
ArkUI_NativeDialogHandle handle指向自定义弹窗控制器的指针。
void* userData用户自定义数据。
callback自定义弹窗显示之前的回调函数。

返回:

类型说明
int32_t错误码。
ARKUI_ERROR_CODE_NO_ERROR 成功。
ARKUI_ERROR_CODE_PARAM_INVALID 函数参数异常。

registerOnDidAppear()

int32_t (*registerOnDidAppear)(ArkUI_NativeDialogHandle handle, void* userData, void (*callback)(void* userData))

描述:

注册自定义弹窗显示之后的回调函数。

说明:

registerOnDidAppear方法需要在调用show之前调用。

起始版本: 19

参数:

参数项描述
ArkUI_NativeDialogHandle handle指向自定义弹窗控制器的指针。
void* userData用户自定义数据。
callback自定义弹窗显示之后的回调函数。

返回:

类型说明
int32_t错误码。
ARKUI_ERROR_CODE_NO_ERROR 成功。
ARKUI_ERROR_CODE_PARAM_INVALID 函数参数异常。

registerOnWillDisappear()

int32_t (*registerOnWillDisappear)(ArkUI_NativeDialogHandle handle, void* userData, void (*callback)(void* userData))

描述:

注册自定义弹窗关闭之前的回调函数。

说明:

registerOnWillDisappear方法需要在调用show之前调用。

起始版本: 19

参数:

参数项描述
ArkUI_NativeDialogHandle handle指向自定义弹窗控制器的指针。
void* userData用户自定义数据。
callback自定义弹窗关闭之前的回调函数。

返回:

类型说明
int32_t错误码。
ARKUI_ERROR_CODE_NO_ERROR 成功。
ARKUI_ERROR_CODE_PARAM_INVALID 函数参数异常。

registerOnDidDisappear()

int32_t (*registerOnDidDisappear)(ArkUI_NativeDialogHandle handle, void* userData, void (*callback)(void* userData))

描述:

注册自定义弹窗关闭之后的回调函数。

说明:

registerOnDidDisappear方法需要在调用show之前调用。

起始版本: 19

参数:

参数项描述
ArkUI_NativeDialogHandle handle指向自定义弹窗控制器的指针。
void* userData用户自定义数据。
callback自定义弹窗关闭之后的回调函数。

返回:

类型说明
int32_t错误码。
ARKUI_ERROR_CODE_NO_ERROR 成功。
ARKUI_ERROR_CODE_PARAM_INVALID 函数参数异常。

setBorderWidth()

int32_t (*setBorderWidth)(ArkUI_NativeDialogHandle handle, float top, float right, float bottom, float left, ArkUI_LengthMetricUnit unit)

描述:

设置自定义弹窗的边框宽度。

说明:

setBorderWidth方法需要在调用show之前调用。

起始版本: 19

参数:

参数项描述
ArkUI_NativeDialogHandle handle指向自定义弹窗控制器的指针。
float top上边框的宽度。
float right右边框的宽度。
float bottom下边框的宽度。
float left左边框的宽度。
ArkUI_LengthMetricUnit unit指定宽度单位,默认为vp。

返回:

类型说明
int32_t错误码。
ARKUI_ERROR_CODE_NO_ERROR 成功。
ARKUI_ERROR_CODE_PARAM_INVALID 函数参数异常。

setBorderColor()

int32_t (*setBorderColor)(ArkUI_NativeDialogHandle handle, uint32_t top, uint32_t right, uint32_t bottom, uint32_t left)

描述:

设置自定义弹窗的边框颜色。

说明:

setBorderColor方法需要在调用show之前调用。

起始版本: 19

参数:

参数项描述
ArkUI_NativeDialogHandle handle指向自定义弹窗控制器的指针。
uint32_t top上边框的颜色。
uint32_t right右边框的颜色。
uint32_t bottom下边框的颜色。
uint32_t left左边框的颜色。

返回:

类型说明
int32_t错误码。
ARKUI_ERROR_CODE_NO_ERROR 成功。
ARKUI_ERROR_CODE_PARAM_INVALID 函数参数异常。

setBorderStyle()

int32_t (*setBorderStyle)(ArkUI_NativeDialogHandle handle, int32_t top, int32_t right, int32_t bottom, int32_t left)

描述:

设置自定义弹窗的边框样式。

说明:

setBorderStyle方法需要在调用show之前调用。

起始版本: 19

参数:

参数项描述
ArkUI_NativeDialogHandle handle指向自定义弹窗控制器的指针。
int32_t top上边框的样式。参数类型ArkUI_BorderStyle,默认值为ARKUI_BORDER_STYLE_SOLID。
int32_t right右边框的样式。参数类型ArkUI_BorderStyle,默认值为ARKUI_BORDER_STYLE_SOLID。
int32_t bottom下边框的样式。参数类型ArkUI_BorderStyle,默认值为ARKUI_BORDER_STYLE_SOLID。
int32_t left左边框的样式。参数类型ArkUI_BorderStyle,默认值为ARKUI_BORDER_STYLE_SOLID。

返回:

类型说明
int32_t错误码。
ARKUI_ERROR_CODE_NO_ERROR 成功。
ARKUI_ERROR_CODE_PARAM_INVALID 函数参数异常。

setWidth()

int32_t (*setWidth)(ArkUI_NativeDialogHandle handle, float width, ArkUI_LengthMetricUnit unit)

描述:

设置自定义弹窗的背板宽度。

说明:

setWidth方法需要在调用show之前调用。

起始版本: 19

参数:

参数项描述
ArkUI_NativeDialogHandle handle指向自定义弹窗控制器的指针。
float width背板宽度。
ArkUI_LengthMetricUnit unit指定宽度的单位,默认为vp。

返回:

类型说明
int32_t错误码。
ARKUI_ERROR_CODE_NO_ERROR 成功。
ARKUI_ERROR_CODE_PARAM_INVALID 函数参数异常。

setHeight()

int32_t (*setHeight)(ArkUI_NativeDialogHandle handle, float height, ArkUI_LengthMetricUnit unit)

描述:

设置自定义弹窗的背板高度。

说明:

setHeight方法需要在调用show之前调用。

起始版本: 19

参数:

参数项描述
ArkUI_NativeDialogHandle handle指向自定义弹窗控制器的指针。
float height背板高度。
ArkUI_LengthMetricUnit unit指定高度的单位,默认为vp。

返回:

类型说明
int32_t错误码。
ARKUI_ERROR_CODE_NO_ERROR 成功。
ARKUI_ERROR_CODE_PARAM_INVALID 函数参数异常。

setShadow()

int32_t (*setShadow)(ArkUI_NativeDialogHandle handle, ArkUI_ShadowStyle shadow)

描述:

设置自定义弹窗的背板阴影。

说明:

setShadow方法需要在调用show之前调用。

起始版本: 19

参数:

参数项描述
ArkUI_NativeDialogHandle handle指向自定义弹窗控制器的指针。
ArkUI_ShadowStyle shadow背板阴影样式,枚举值。

返回:

类型说明
int32_t错误码。
ARKUI_ERROR_CODE_NO_ERROR 成功。
ARKUI_ERROR_CODE_PARAM_INVALID 函数参数异常。

setCustomShadow()

int32_t (*setCustomShadow)(ArkUI_NativeDialogHandle handle, const ArkUI_AttributeItem* customShadow)

描述:

设置自定义弹窗的背板阴影。

说明:

setCustomShadow方法需要在调用show之前调用。

起始版本: 19

参数:

参数项描述
ArkUI_NativeDialogHandle handle指向自定义弹窗控制器的指针。
const ArkUI_AttributeItem* customShadow自定义阴影参数,格式与ArkUI_NodeAttributeType中的NODE_SHADOW属性一致。

返回:

类型说明
int32_t错误码。
ARKUI_ERROR_CODE_NO_ERROR 成功。
ARKUI_ERROR_CODE_PARAM_INVALID 函数参数异常。

setBackgroundBlurStyle()

int32_t (*setBackgroundBlurStyle)(ArkUI_NativeDialogHandle handle, ArkUI_BlurStyle blurStyle)

描述:

设置自定义弹窗的背板模糊材质。

说明:

setBackgroundBlurStyle方法需要在调用show之前调用。

起始版本: 19

参数:

参数项描述
ArkUI_NativeDialogHandle handle指向自定义弹窗控制器的指针。
ArkUI_BlurStyle blurStyle背板模糊材质,枚举值。

返回:

类型说明
int32_t错误码。
ARKUI_ERROR_CODE_NO_ERROR 成功。
ARKUI_ERROR_CODE_PARAM_INVALID 函数参数异常。

setKeyboardAvoidMode()

int32_t (*setKeyboardAvoidMode)(ArkUI_NativeDialogHandle handle, ArkUI_KeyboardAvoidMode keyboardAvoidMode)

描述:

设置自定义弹窗避让键盘模式。

说明:

setKeyboardAvoidMode方法需要在调用show之前调用。

起始版本: 19

参数:

参数项描述
ArkUI_NativeDialogHandle handle指向自定义弹窗控制器的指针。
ArkUI_KeyboardAvoidMode keyboardAvoidMode避让键盘模式,枚举值。

返回:

类型说明
int32_t错误码。
ARKUI_ERROR_CODE_NO_ERROR 成功。
ARKUI_ERROR_CODE_PARAM_INVALID 函数参数异常。

enableHoverMode()

int32_t (*enableHoverMode)(ArkUI_NativeDialogHandle handle, bool enableHoverMode)

描述:

设置自定义弹窗是否响应悬停态。

说明:

enableHoverMode方法需要在调用show之前调用。

起始版本: 19

参数:

参数项描述
ArkUI_NativeDialogHandle handle指向自定义弹窗控制器的指针。
bool enableHoverMode是否响应悬停态,默认false。true表示响应悬停态,false表示不响应悬停态。

返回:

类型说明
int32_t错误码。
ARKUI_ERROR_CODE_NO_ERROR 成功。
ARKUI_ERROR_CODE_PARAM_INVALID 函数参数异常。

setHoverModeArea()

int32_t (*setHoverModeArea)(ArkUI_NativeDialogHandle handle, ArkUI_HoverModeAreaType hoverModeAreaType)

描述:

设置悬停态下自定义弹窗默认展示区域。

说明:

setHoverModeArea方法需要在调用show之前调用。

起始版本: 19

参数:

参数项描述
ArkUI_NativeDialogHandle handle指向自定义弹窗控制器的指针。
ArkUI_HoverModeAreaType hoverModeAreaType悬停态区域,枚举值。

返回:

类型说明
int32_t错误码。
ARKUI_ERROR_CODE_NO_ERROR 成功。
ARKUI_ERROR_CODE_PARAM_INVALID 函数参数异常。

setFocusable()

int32_t (*setFocusable)(ArkUI_NativeDialogHandle handle, bool focusable)

描述:

设置自定义弹窗是否获取焦点。

说明:

setFocusable方法需要在调用show之前调用。

起始版本: 19

参数:

参数项描述
ArkUI_NativeDialogHandle handle指向自定义弹窗控制器的指针。
bool focusable自定义弹窗是否获取焦点。true表示自动获取焦点,false表示不自动获取焦点。默认值:true

返回:

类型说明
int32_t错误码。
ARKUI_ERROR_CODE_NO_ERROR 成功。
ARKUI_ERROR_CODE_PARAM_INVALID 函数参数异常。

setBackgroundBlurStyleOptions()

int32_t (*setBackgroundBlurStyleOptions)(ArkUI_NativeDialogHandle handle, const ArkUI_AttributeItem* backgroundBlurStyleOptions)

描述:

设置自定义弹窗的背景模糊效果。

说明:

setBackgroundBlurStyleOptions方法需要在调用show之前调用。

起始版本: 19

参数:

参数项描述
ArkUI_NativeDialogHandle handle指向自定义弹窗控制器的指针。
const ArkUI_AttributeItem* backgroundBlurStyleOptions背景模糊效果。参数ArkUI_AttributeItem格式:
.value[0].i32:表示深浅色模式,取ArkUI_ColorMode枚举值。
.value[1]?.i32:表示取色模式,取ArkUI_AdaptiveColor枚举值。
.value[2]?.f32:表示模糊效果程度,取[0.0,1.0]范围内的值,超出有效值区间时取边界值。
.value[3]?.u32:表示灰阶模糊参数,对黑色的提亮程度,有效值范围为[0,127],超出有效值范围,取0。
.value[4]?.u32:表示灰阶模糊参数,对白色的压暗程度,有效值范围为[0,127],超出有效值范围,取0。
.value[5]?.i32:表示模糊激活策略,取ArkUI_BlurStyleActivePolicy枚举值。
.value[6]?.u32:表示窗口失焦后,窗口内控件模糊效果会被移除,此时控件背板的颜色,0xargb类型。

返回:

类型说明
int32_t错误码。
ARKUI_ERROR_CODE_NO_ERROR 成功。
ARKUI_ERROR_CODE_PARAM_INVALID 函数参数异常。

setBackgroundEffect()

int32_t (*setBackgroundEffect)(ArkUI_NativeDialogHandle handle, const ArkUI_AttributeItem* backgroundEffect)

描述:

设置自定义弹窗的背景效果参数。

说明:

setBackgroundEffect方法需要在调用show之前调用。

起始版本: 19

参数:

参数项描述
ArkUI_NativeDialogHandle handle指向自定义弹窗控制器的指针。
const ArkUI_AttributeItem* backgroundEffect背景效果参数。参数ArkUI_AttributeItem格式:
.value[0].f32:表示模糊半径,单位为vp。
.value[1]?.f32:表示饱和度。
.value[2]?.f32:表示亮度。
.value[3]?.u32:表示颜色,0xargb类型。
.value[4]?.i32:表示取色模式,取ArkUI_AdaptiveColor枚举值。
.value[5]?.u32:表示灰阶模糊参数,对黑色的提亮程度,有效值范围为[0,127],超出有效值范围,取0。
.value[6]?.u32:表示灰阶模糊参数,对白色的压暗程度,有效值范围为[0,127],超出有效值范围,取0。
.value[7]?.i32:表示模糊激活策略,取ArkUI_BlurStyleActivePolicy枚举值。
.value[8]?.u32:表示窗口失焦后,窗口内控件模糊效果会被移除,此时控件背板的颜色,0xargb类型。

返回:

类型说明
int32_t错误码。
ARKUI_ERROR_CODE_NO_ERROR 成功。
ARKUI_ERROR_CODE_PARAM_INVALID 函数参数异常。

你可能感兴趣的鸿蒙文章

openharmony 鸿蒙 arkts-apis-uicontext-contextmenucontroller

openharmony 鸿蒙 errorcode-canvas

openharmony 鸿蒙 capi-oh-nativexcomponent-native-xcomponent-oh-nativexcomponent

openharmony 鸿蒙 errorcode-bindSheet

openharmony 鸿蒙 js-apis-arkui-uiExtension-sys

openharmony 鸿蒙 capi-arkui-accessibility-arkui-accessibilityeventinfo

openharmony 鸿蒙 capi-arkui-rendernodeutils

openharmony 鸿蒙 capi-native-node-h-nodeattributetype-layoutcomponent

openharmony 鸿蒙 js-apis-arkui-node

openharmony 鸿蒙 capi-native-node-h

  • 所属分类: 后端技术
  • 本文标签: 鸿蒙 软件
  • 版权声明: 本文链接 https://seaxiang.com/blog/Iqeirfpe