HarmonyOS 鸿蒙Next CustomDialogController 不显示问题

发布于 1周前 作者 caililin 最后一次编辑是 5天前 来自 鸿蒙OS

HarmonyOS 鸿蒙Next CustomDialogController 不显示问题

当前使用NavPathStack实现页面之间的跳转和传值,目前项目中使用自定义拍摄视频功能也能实现,但是返回到上一页的时候,CustomDialogController 不显示,下面是两个示例代码,选择图片可以显示,拍摄视频回来不显示。唯一区别的是图片选择也把图片选择好,在传给当前页,视频是直接用media.AVRecorder拍摄视频带回来的。请问一下可能有什么情况影响到了

/**

  • 打开拍照 */ openTakePhotoPage(maxNum:number = 10) { let photoArray = this.picLocalPath?.split(",")?.filter((value) => { return StringUtils.isNotBlank(value) }) let params = new TakePhotoParams() params.photoUriList = photoArray params.maxNum = maxNum NavigationUtil.openPage({ name: NavigationPath.CommonTakePhotoPage, param: params, onPop: (result) => { //可以显示 let dialog = new LoadingComponent() dialog.showLoading() this.updatePic(result).finally(()=>{ dialog.hide() }) } }) } //拍摄视频 openTakeVideoPage() { NavigationUtil.openPage({ name: NavigationPath.VideoRecordPage,onPop: (result) => { let photoResult = result.result as RouterParams if (photoResult) { //不显示 let dialog = new LoadingComponent() dialog.showLoading() this.updateVideo(photoResult.data).finally(()=>{ dialog.hide() }) } } }) }

更多关于HarmonyOS 鸿蒙Next CustomDialogController 不显示问题的实战系列教程也可以访问 https://www.itying.com/category-93-b0.html

2 回复
CustomDialogController仅在作为[@CustomDialog](/user/CustomDialog)和[@Component](/user/Component) struct的成员变量,且在[@Component](/user/Component) struct内部定义时赋值才有效。所以你做了不合适的封装后会出现问题。可以使用promptAction.openCustomDialog来进行弹窗绘制,这个场景不建议使用CustomDialogController。
文档链接:‘https://developer.huawei.com/consumer/cn/doc/harmonyos-references-V5/js-apis-promptaction-V5#promptactionopencustomdialog11

更多关于HarmonyOS 鸿蒙Next CustomDialogController 不显示问题的实战系列教程也可以访问 https://www.itying.com/category-93-b0.html


针对HarmonyOS鸿蒙系统中Next CustomDialogController不显示的问题,这通常可能与多个因素有关,包括但不限于对话框的初始化设置、布局文件配置、显示逻辑错误或系统兼容性问题。

首先,请确保CustomDialogController已正确初始化,并检查其布局文件是否已正确设置且符合设计要求。对话框的显示依赖于布局文件的配置,如果布局文件有误或未正确引用,可能导致对话框无法显示。

其次,检查对话框的显示逻辑。确保在调用显示对话框的方法前,相关的上下文(Context)和窗口(Window)对象已正确获取且未失效。此外,如果对话框的显示依赖于异步操作,请确保异步操作已完成且未发生异常。

最后,考虑到系统兼容性问题,请确认您的应用已针对当前HarmonyOS版本进行了适配,并检查是否有相关的系统更新或补丁可用于解决此问题。

如果以上步骤均无法解决问题,可能是系统层面的bug或特定环境下的兼容性问题。此时,建议直接联系官网客服以获取更专业的技术支持。官网地址是:https://www.itying.com/category-93-b0.html

回到顶部