HarmonyOS 鸿蒙Next 侧滑2次退出app
HarmonyOS 鸿蒙Next 侧滑2次退出app
onBackPress(): boolean | void {
let nowTime = Date.now()
if (nowTime - this.firstBcakTimestamp < 1000) {
const context = getContext(this) as common.UIAbilityContext
//退出app
context.terminateSelf()
} else {
this.firstBcakTimestamp = nowTime
// 这个自定义弹窗 快速返回2次,第二次是关闭弹窗不能正常退出app
new ToastViewFunc().handlerPublicToastFunc(this.getUIContext(), this.getUIContext().getPromptAction(),
'再按一次返回键,可以退出程序')
// 这个弹窗正常 快速返回2次正常退出app,但是这个弹窗不能加图片
// promptAction.showToast({ message:'再按一次返回键,可以退出程序' })
}
return true
}
new ToastViewFunc().handlerPublicToastFunc 这个是使用 promptAction.openCustomDialog 封装的弹窗
现在的问题是用这个自定义弹窗在1s内我第二次侧滑退出app,他是去关闭了这个弹窗,无法退出app。我用 promptAction.showToast 就不会出现问题,但是这个弹窗无法文字加图片显示
这个有什么解决的方案吗
更多关于HarmonyOS 鸿蒙Next 侧滑2次退出app的实战系列教程也可以访问 https://www.itying.com/category-93-b0.html
3 回复
我这边是在this.promptAction.openCustomDialog下的onWillDismiss方法处理的
onWillDismiss: (dismissDialogAction: DismissDialogAction) => { //弹窗响应
console.info("reason" + JSON.stringify(dismissDialogAction.reason))
console.log("dialog onWillDismiss")
if (dismissDialogAction.reason == 0 && this.isSwipeBackEnabled) { //手势返回时,关闭弹窗。
if (MyPromptActionUtil.myExitAppPromptActionUtil) { //手势返回,如果发现当前退出弹窗在显示,那么退出app
MyRouterUtil.exitApp()
}
this.promptAction.closeCustomDialog(this.contentNode)
}
if (dismissDialogAction.reason == 1 && this.isMaskTapToCloseEnabled) {
this.promptAction.closeCustomDialog(this.contentNode)
}
},
更多关于HarmonyOS 鸿蒙Next 侧滑2次退出app的实战系列教程也可以访问 https://www.itying.com/category-93-b0.html
感谢