HarmonyOS 自定义弹窗控制问题

@CustomDialog
export default struct CustomDialogWidget {
  controller: CustomDialogController

  // aboutToAppear() {}
  build() {
    Column() {
      
    }.width('100%').height('100%').backgroundColor($r('app.color.search_hint_color')).onClick(() => {
      if (this.controller) {
        this.controller.close()
      }
    })
  }
}

上面是自定义的一个弹窗,按照官方提供的方法在页面上面打开,现在没有办法关闭也就是代码里面的controller这个属性一直是空值,controller要在哪里进行赋值然后用来关闭弹窗。

HarmonyOS
1天前
浏览
收藏 0
回答 1
待解决
回答 1
按赞同
/
按时间
superinsect

参考示例如下:

@Entry
@Component
struct Index60 {
  @State message: string = '请点击';
  citySelectorDialogController: CustomDialogController = new CustomDialogController({
    builder: CustomDialogWidget(),
    alignment: DialogAlignment.Center,
    customStyle: true
  })

  build() {
    Column() {
      Text(this.message)
        .fontSize(40)
    }
    .width('100%')
    .height('100%')
    .onClick(() => {
      this.citySelectorDialogController.open()
    })
  }
}

@CustomDialog
export default struct CustomDialogWidget {
  controller: CustomDialogController

  build() {
    Column() {
      Text('這個是弹窗')
        .fontSize(40)
    }.width(300)
    .height(300)
    .backgroundColor(Color.Red)
    .onClick(() => {
      if (this.controller) {
        this.controller.close()
      }
    })
  }
}
分享
微博
QQ
微信
回复
1天前
相关问题
HarmonyOS 自定义弹窗层级问题
47浏览 • 1回复 待解决
HarmonyOS 自定义弹窗CustomDialog 问题
36浏览 • 1回复 待解决
HarmonyOS 自定义弹窗问题
733浏览 • 1回复 待解决
HarmonyOS 自定义弹窗CustomDialog问题
638浏览 • 1回复 待解决
HarmonyOS 自定义弹窗封装问题
41浏览 • 1回复 待解决
HarmonyOS 自定义弹窗 (CustomDialog)问题
433浏览 • 1回复 待解决
自定义弹窗使用相关问题
972浏览 • 1回复 待解决
HarmonyOS 自定义弹窗刷新问题
73浏览 • 1回复 待解决
HarmonyOS 自定义弹窗部分问题答疑
355浏览 • 1回复 待解决
HarmonyOS 自定义弹窗不能显示问题
58浏览 • 1回复 待解决
HarmonyOS 自定义弹窗点击跳转问题
21浏览 • 1回复 待解决
自定义弹窗自定义转场动画
1174浏览 • 1回复 待解决
HarmonyOS 自定义弹窗选择
398浏览 • 1回复 待解决
HarmonyOS 使用全局自定义弹窗
70浏览 • 1回复 待解决
HarmonyOS 全局自定义弹窗demo
321浏览 • 1回复 待解决