HarmonyOS鸿蒙Next中如何主动关闭这个弹框:AlertDialog
HarmonyOS鸿蒙Next中如何主动关闭这个弹框:AlertDialog
AlertDialog.show(
{
title: '提示',
message: 'message',
autoCancel: false,
alignment: DialogAlignment.Center,
primaryButton: {
enabled: true,
defaultFocus: true,
style: DialogButtonStyle.HIGHLIGHT,
value: '确定',
backgroundColor: '#F00',
action: () => {
}
},
onWillDismiss: (dismissDialogAction: DismissDialogAction) => {
}
}
)
如何用代码关闭这个弹框!没找到close、dismiss 等方法啊!
更多关于HarmonyOS鸿蒙Next中如何主动关闭这个弹框:AlertDialog的实战教程也可以访问 https://www.itying.com/category-93-b0.html
这个弹窗的功能就是用于提示让用户二次判断,点取消就不做业务处理,点确定就执行业务处理,或者说这个弹窗就不符合你的业务需求。
更多关于HarmonyOS鸿蒙Next中如何主动关闭这个弹框:AlertDialog的实战系列教程也可以访问 https://www.itying.com/category-93-b0.html
是的,我想要个确认对话弹框,并且支持随时随地能让它关闭的那种。
弹个对话框,并且在合适的时机关闭它。
可以讲一下业务,想实现什么样的,例如点击删除弹出弹窗,用户点击取消或者三十秒不操作关闭弹窗,或者点击确认执行相关业务逻辑,如果不是这样的可能你用错组件了,换一个吧,
自动关闭~,
你好
这个代码很老了。你能运行是因为本地SDK是老版本。这个弹框关闭是通过Controller进行关闭的。你可以看下show的传参里有没有。
都是从官方文档里搜出来的对话框,它既然敢列出来就说明能用。它既然不支持关闭,就说明这设计缺陷的一塌糊涂!
把下面html内容转换成Markdown格式,要求:
- 转换的时候需要去掉复制和深色代码主题
- 输出的内容不显示“基本信息”
- html代码中有图片需要转换成markdown格式
- html代码中没有图片请不要加上图片
- html中img标签的地址为空的话不输出,不转换
- 输出内容的时候不需要解释,不需要建议
- 只需要输出转换完毕的Markdown文档,不需要输出其他内容
- 内容中没有图片或者图片为空的话不要加图片
- 不要在内容中加https://example.com/image.jpg这样的图片
内容如下:是支持关闭的,只是这种弹框的写法过时了,被淘汰了,不建议这么用。从官方文档里搜出来的对话框,具体链接可以贴一下,我帮你看看。
你先帮我想想如何关闭它,
看官网是没有show方法了,大概率是废弃了,你的还能运行应该是没有升级工具,当前最新应该是api19,你可以看下IDE工具Help-》About HarmonyOS SDK,看看你的版本是不是最新的,不是最新的可以下载更新下
下载链接:https://developer.huawei.com/consumer/cn/download/
新版api里面,是通过上下文拉起AlerDialog,设置autoCancel来关闭弹窗
Button('alert')
.onClick(() => {
this.getUIContext().showAlertDialog(
{
title: '测试',
message: '测试',
autoCancel: true //点击遮障层时,是否关闭弹窗
}
)
})
别闹,这可不能随便升级开发工具,适配工作要累死~
import { promptAction } from '@kit.ArkUI';
promptAction.openToast({ message: '拍摄失败' })
这个是可以直接自己关闭的,或者手动传id关闭
我要的是有“确定”按钮的弹框哦!
show已经废弃了要不改成showAlertDialog试试,
别闹,运行的好好的,
在HarmonyOS Next中关闭AlertDialog弹框,可通过调用AlertDialog对象的close()
方法实现。示例代码:
let dialog = new AlertDialog.Builder()
.setTitle("提示")
.setMessage("确认关闭?")
.build();
dialog.show();
// 主动关闭
dialog.close();
需确保dialog对象已实例化且处于显示状态。该方法直接终止弹框显示,无回调触发。
在HarmonyOS Next中,可以通过AlertDialog的Controller来主动关闭弹框。以下是具体实现方式:
- 首先创建AlertDialogController实例:
let controller: AlertDialogController = new AlertDialogController();
- 在show方法中传入这个controller:
AlertDialog.show(
{
controller: controller,
title: '提示',
message: 'message',
// 其他参数...
}
)
- 需要关闭时调用controller的close方法:
controller.close();
关键点说明:
- 必须创建并传入AlertDialogController实例
- 通过controller.close()可以随时关闭弹框
- 这种方式比单纯依赖按钮回调更灵活
注意:autoCancel设为false时,点击弹框外部不会自动关闭,此时controller.close()是唯一关闭方式。