HarmonyOS鸿蒙Next中自定义弹窗没有设置返回手势不消失的API

HarmonyOS鸿蒙Next中自定义弹窗没有设置返回手势不消失的API

loadingDialogController: CustomDialogController = new CustomDialogController({ builder: MyLoadingDialog({ loadingTips: “” }), autoCancel: false, // 这个设为false,但是点返回时还是会消失,没有返回不消失的api customStyle: true, alignment: DialogAlignment.Center, cancel: () => { LogUtils.info(“消失了”) } }) 怎么才能返回手势不消失呢


更多关于HarmonyOS鸿蒙Next中自定义弹窗没有设置返回手势不消失的API的实战教程也可以访问 https://www.itying.com/category-93-b0.html

4 回复

onWillDismiss:()=>{ } 应该就可以了

在HarmonyOS鸿蒙Next中,自定义弹窗默认情况下可以通过手势(如滑动或点击外部区域)来关闭。如果你希望自定义弹窗在用户执行返回手势时不自动消失,目前没有直接的API来禁用返回手势的关闭行为。你可以通过重写相关事件处理逻辑来实现这一需求,例如监听返回手势事件并阻止弹窗关闭。具体实现方式可以参考鸿蒙开发文档中关于弹窗和手势处理的部分。

在HarmonyOS鸿蒙Next中,自定义弹窗默认支持返回手势关闭。如果需要禁用此功能,可以通过以下方式实现:

  1. 重写onBackPressed方法:在自定义弹窗中重写此方法,并返回true以阻止默认的返回手势行为。
@Override
public boolean onBackPressed() {
    return true; // 阻止返回手势关闭弹窗
}
  1. 自定义弹窗逻辑:确保弹窗的显示和隐藏逻辑由你控制,避免系统默认行为。

通过以上方式,你可以实现自定义弹窗在返回手势时不消失的效果。

回到顶部