HarmonyOS 弹窗onWillDismiss

使用uiContext.getPromptAction().openCustomDialog()制作toast,使用了showInSubWindow: true配置,以及onWillDismiss。期望是该toast不受返回键,左滑等控制关闭,配置了onWillDismiss: () => {}发现,toast不受返回键,左滑等控制关闭,但是阻塞了页面导航。

HarmonyOS
2024-12-25 13:02:11
浏览
收藏 0
回答 1
待解决
回答 1
按赞同
/
按时间
superinsect

当前的规格是这样的,弹框弹起后左滑/右滑事件就是控制弹框的关闭,而弹框的onWillDismiss需求就是为了拦截左滑/右滑等事件,可以查看onWillDismiss此属性的说明:

https://developer.huawei.com/consumer/cn/doc/harmonyos-references-V5/js-apis-promptaction-V5#basedialogoptions11可以通过onWillDismiss的回调来实现效果,参考示例:

onWillDismiss: (dismissDialogAction: DismissDialogAction) => {
  console.info("reason" + JSON.stringify(dismissDialogAction.reason))
  console.log("dialog onWillDismiss")
  if (dismissDialogAction.reason == DismissReason.PRESS_BACK) {
    // dismissDialogAction.dismiss()
    router.pushUrl({ url: "router/url" })
  }
  if (dismissDialogAction.reason == DismissReason.TOUCH_OUTSIDE) {
    dismissDialogAction.dismiss()
  }
}

以上代码即在左滑的时候不控制弹框关闭,去执行router路由方法。

分享
微博
QQ
微信
回复
2024-12-25 15:53:23
相关问题
HarmonyOS 弹窗优化
695浏览 • 1回复 待解决
HarmonyOS 自定义弹窗如何更新弹窗的UI
1154浏览 • 1回复 待解决
HarmonyOS 弹窗异常问题
1468浏览 • 1回复 待解决
HarmonyOS 全局弹窗问题
1484浏览 • 1回复 待解决
HarmonyOS 全局弹窗demo
806浏览 • 1回复 待解决
HarmonyOS 权限弹窗问题
1146浏览 • 1回复 待解决
HarmonyOS 全局弹窗显示
886浏览 • 1回复 待解决
HarmonyOS 权限弹窗问题
1125浏览 • 1回复 待解决
HarmonyOS 弹窗显示异常
948浏览 • 1回复 待解决
HarmonyOS 弹窗高度问题
916浏览 • 1回复 待解决
HarmonyOS 底部弹窗问题
1699浏览 • 1回复 待解决
HarmonyOS 加载弹窗模版
1007浏览 • 1回复 待解决
HarmonyOS dialog弹窗相关问题
1293浏览 • 1回复 待解决
HarmonyOS OAID弹窗无法展示
649浏览 • 1回复 待解决
HarmonyOS dialog弹窗跳转问题
876浏览 • 1回复 待解决
HarmonyOS 弹窗文字未居中
564浏览 • 1回复 待解决
HarmonyOS 弹窗,可触摸穿透
854浏览 • 1回复 待解决