HarmonyOS CustomDialog怎么禁用掉左滑手势

CustomDialog在弹出到桌面时,使用左滑手势会关闭掉弹窗,现在有办法在CustomDialog上关闭左滑手势吗?

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

可以使用onWillDismiss方法。当用户执行点击遮障层关闭、左滑/右滑、三键back、键盘ESC关闭交互操作时,如果注册该回调函数,则不会立刻关闭弹窗。在回调函数中可以通过reason得到阻拦关闭弹窗的操作类型,从而根据原因选择是否能关闭弹窗。可参考以下文档:https://developer.huawei.com/consumer/cn/doc/harmonyos-references-V5/ts-methods-custom-dialog-box-V5#customdialogcontrolleroptions对象说明

参考代码如下:

dialogController: CustomDialogController | null = new CustomDialogController({
  builder: CustomDialogExample(),
  cancel: this.exitApp,
  autoCancel: true,
  alignment: DialogAlignment.Bottom,
  onWillDismiss: (dismissDialogAction: DismissDialogAction) => {
    console.info("reason=" + JSON.stringify(dismissDialogAction.reason))
    if (dismissDialogAction.reason == DismissReason.PRESS_BACK) {
      return
    }
  },
  offset: { dx: 0, dy: -20 },
  gridCount: 4,
  customStyle: false,
  cornerRadius: 10,
})
分享
微博
QQ
微信
回复
2024-12-25 14:36:23
相关问题
获取返回手势方法
531浏览 • 1回复 待解决
HarmonyOS 页面禁止
475浏览 • 1回复 待解决
HarmonyOS list 字体显示异常
232浏览 • 1回复 待解决
【JS】如何实现删除功能?
3714浏览 • 1回复 待解决
HarmonyOS 如何禁用页面返回手势
383浏览 • 1回复 待解决
HarmonyOS 禁用滑动返回手势问题
193浏览 • 1回复 待解决
HarmonyOS 二级页面关闭问题
496浏览 • 1回复 待解决
如何禁用系统左右手势返回?
446浏览 • 1回复 待解决
能否拦截返回并替换为router.back
827浏览 • 1回复 待解决
HarmonyOS 怎么禁用分屏模式
117浏览 • 1回复 待解决