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
2024-12-25 12:43:31
浏览
收藏 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
微信
回复
2024-12-25 14:44:46
相关问题
HarmonyOS 自定义弹窗关闭问题
75浏览 • 1回复 待解决
HarmonyOS 自定义弹窗层级问题
247浏览 • 1回复 待解决
HarmonyOS 自定义弹窗CustomDialog问题
790浏览 • 1回复 待解决
HarmonyOS 自定义弹窗问题
932浏览 • 1回复 待解决
HarmonyOS 自定义弹窗CustomDialog 问题
202浏览 • 1回复 待解决
自定义弹窗使用相关问题
1180浏览 • 1回复 待解决
HarmonyOS 自定义弹窗刷新问题
221浏览 • 1回复 待解决
HarmonyOS 自定义弹窗 (CustomDialog)问题
621浏览 • 1回复 待解决
HarmonyOS 自定义弹窗封装问题
184浏览 • 1回复 待解决
自定义弹窗自定义转场动画
1335浏览 • 1回复 待解决
HarmonyOS 自定义弹窗点击跳转问题
216浏览 • 1回复 待解决
HarmonyOS 自定义弹窗不能显示问题
250浏览 • 1回复 待解决
HarmonyOS 自定义弹窗部分问题答疑
582浏览 • 1回复 待解决
HarmonyOS 自定义弹窗选择
641浏览 • 1回复 待解决
HarmonyOS 自定义弹窗初始化问题
77浏览 • 1回复 待解决
HarmonyOS 全局自定义弹窗demo
512浏览 • 1回复 待解决
HarmonyOS 使用全局自定义弹窗
215浏览 • 1回复 待解决