HarmonyOS鸿蒙Next中Navigation界面A跳转NavDestination界面B,A所持有的CustomDialogController还会显示,想要通过levelMode和levelUniqueId控制只显示在A界面如何实现呢?
HarmonyOS鸿蒙Next中Navigation界面A跳转NavDestination界面B,A所持有的CustomDialogController还会显示,想要通过levelMode和levelUniqueId控制只显示在A界面如何实现呢?
目前我设置这两个参数无效
更多关于HarmonyOS鸿蒙Next中Navigation界面A跳转NavDestination界面B,A所持有的CustomDialogController还会显示,想要通过levelMode和levelUniqueId控制只显示在A界面如何实现呢?的实战教程也可以访问 https://www.itying.com/category-93-b0.html
利用生命周期组件aboutToDisappear
主动关闭弹窗行不行?
@Component
struct PageA {
dialogController: CustomDialogController = new CustomDialogController(...);
aboutToDisappear() { //页面消失时关闭弹窗
this.dialogController.close();
}
}
更多关于HarmonyOS鸿蒙Next中Navigation界面A跳转NavDestination界面B,A所持有的CustomDialogController还会显示,想要通过levelMode和levelUniqueId控制只显示在A界面如何实现呢?的实战系列教程也可以访问 https://www.itying.com/category-93-b0.html
-
你想要控制弹窗只是在A页面弹出的话可以在A页面消失或者隐藏的时候关闭,A页面显示的时候再打开这个弹窗,可以参考页面切换来处理不同的页面变化: [@ohos.arkui.observer (无感监听)-UI界面-ArkTS API-ArkUI(方舟UI框架)-应用框架 - 华为HarmonyOS开发者](https://developer.huawei.com/consumer/cn/doc/harmonyos-references/js-apis-arkui-observer#uiobserveronnavdestinationswitch12)
-
这个弹窗一定是绑定在某个页面的那你就使用模态弹窗来处理 半模态转场-模态转场设置-通用属性-ArkTS组件-ArkUI(方舟UI框架)-应用框架 - 华为HarmonyOS开发者
您好:当前,ArkUI弹出框默认为非页面级弹出框,在页面路由跳转时,如果开发者未调用close方法将其关闭,弹出框将不会自动关闭。若需实现在跳转页面时覆盖弹出框的场景,可以使用组件导航子页面显示类型的弹窗类型或者页面级弹出框。
谢谢!
在鸿蒙Next中,要实现CustomDialogController
只在界面A显示,可以使用levelMode
和levelUniqueId
控制。在界面A的CustomDialogController
构造函数中设置levelMode
为DialogLevelMode.SINGLE
,并指定唯一的levelUniqueId
。当从界面A跳转到界面B时,对话框会自动隐藏。在界面A的aboutToAppear()
中调用dialogController.show()
,在界面A的aboutToDisappear()
中调用dialogController.hide()
。这样对话框将仅在界面A显示。