中国优质的IT技术网站
专业IT技术创作平台
IT职业在线教育平台
本文原创发布在华为开发者社区。
本示例在一个非@Entry的类中创建一个CustomDialogController弹窗,以此来实现不依赖entry的弹窗。
实现非entry弹窗源码链接
点击请求网络按钮,触发不依赖entry的弹窗。
export function testPromptDialog() { const that = GlobalContext.getContext().getObject('UIContext') as UIContext; if (that) { promptAction.openCustomDialog({ builder: customDialogBuilder.bind(that, '网络请求失败!') }).then((dialogId: number) => { customDialogId = dialogId; }) } }
export function customDialogBuilder(content: String) { Column() { Text(`Tip: ${content} `).fontSize(20).height('30%') Text('失败原因:!!!!').fontSize(16).height('30%') Row() { Button('确认').onClick(() => { promptAction.closeCustomDialog(customDialogId) }) Blank().width(50) Button('取消').onClick(() => { promptAction.closeCustomDialog(customDialogId) }) } .margin({top: 30}) }.height(200).padding(5) }
微信扫码分享