HarmonyOS 鸿蒙Next api升级到beta6后,使用CustomDialogController封装的弹窗组件,调用出现问题
HarmonyOS 鸿蒙Next api升级到beta6后,使用CustomDialogController封装的弹窗组件,调用出现问题 调用关闭A弹窗函数,A弹窗成功关闭了,接着调用打开B弹窗函数,A弹窗再次被打开,B弹窗未打开
参考以下demo试试
@CustomDialog
export struct DialogB {
controllerDialog?: CustomDialogController
build() {
Column() {
Text('我是B').fontColor(Color.Black)
}.backgroundColor(Color.White).height(100).width(200)
}
}
@CustomDialog
export struct DialogA {
dialogB: CustomDialogController | null = new CustomDialogController({
builder: DialogB(),
alignment: DialogAlignment.Center,
customStyle: true
})
controllerDialog?: CustomDialogController
cancel: () => void = () => {
}
build() {
Column() {
Text('点我弹B')
.onClick(() => {
this.cancel()
console.log('1')
if (this.dialogB != null) {
this.dialogB.open()
}
})
}.backgroundColor(Color.White).height(100).width(200)
}
}
@Entry
@Component
struct Index {
@State message: string = '点屏幕弹A';
dialog
CustomDialogController = new CustomDialogController({
builder: DialogA({
cancel: () => {
this.dialogA.close()
}
}),
alignment: DialogAlignment.Center,
customStyle: true
})
build() {
RelativeContainer() {
Text(this.message).fontColor(Color.White)
}
.height('100%')
.width('100%')
.backgroundColor(Color.Black)
.onClick(() => {
this.dialogA.open()
})
}
}
更多关于HarmonyOS 鸿蒙Next api升级到beta6后,使用CustomDialogController封装的弹窗组件,调用出现问题的实战系列教程也可以访问 https://www.itying.com/category-93-b0.html
现在最新的API版本是API14(HarmonyOS 5.0.2),升级再看看
总的来说,HarmonyOS是一款非常优秀的操作系统,期待它能在未来带给我们更多惊喜!
使用CustomDialogController封装的弹窗组件?具体代码逻辑没贴很难定位原因。
不过官网的CustomDialogController目前调用展示和关闭弹框。切换弹框是没有问题的。可以对照代码看一下:
针对您提到的HarmonyOS鸿蒙Next API升级到beta6后,使用CustomDialogController封装的弹窗组件调用出现问题的情况,这通常可能是由于API变更或者组件兼容性问题导致。
在鸿蒙系统中,随着版本的更新,系统API可能会发生变化,这可能导致之前版本的代码在新版本中无法正常工作。对于CustomDialogController这类封装组件,如果它依赖于特定的系统API,那么这些API的变更可能会直接影响到组件的功能。
解决这类问题的一般步骤包括:
-
查阅官方文档:检查鸿蒙系统beta6版本的更新日志和API文档,了解是否有与CustomDialogController相关的API发生变更。
-
更新组件库:如果CustomDialogController是第三方库提供的,尝试查找是否有针对beta6版本的更新版本,或者联系库的维护者获取帮助。
-
代码调整:根据API变更情况,对使用CustomDialogController的代码进行调整,以适应新版本的系统API。
如果上述步骤无法解决问题,可能是由于更复杂的兼容性问题或系统bug导致。此时,您可以考虑联系鸿蒙系统的官方技术支持团队寻求帮助。
如果问题依旧没法解决请联系官网客服,官网地址是 https://www.itying.com/category-93-b0.html,