class areaData { img: string = '' name: string = '' } @CustomDialog export struct CustomDialog01 { controller: CustomDialogController // private inputValue: string = '' @State areaData: areaData[] = [] @State areaDataItem: areaData = { img: '', name: "" } changeInputValue: Function = (data: areaData) => { } build() { Column() { Text('Change text').fontSize(20).margin({ top: 10, bottom: 10 }) Text(this.areaDataItem.name) } } } @Entry @Component struct DialogDemo01 { @State areaData: areaData[] = [{ img: 'Tx.png', name: "主题" }, { img: 'Tx.png', name: "区域" }, { img: 'Tx.png', name: "事项" }, { img: 'Tx.png', name: "距离" }] // @State inputValue: string = 'click me12' @State areaDataItem: areaData = { img: '', name: "" } dialogController: CustomDialogController = new CustomDialogController({ builder: CustomDialog01({ areaDataItem: this.areaDataItem, changeInputValue: (data: areaData) => { this.areaDataItem = data } }) }) build() { Column() { // Button('点击').fontSize(30) // .onClick(() => { // this.dialogController.open() // }).backgroundColor(0x317aff) ForEach(this.areaData, (item: areaData, i: number) => { Text(item.name).onClick(() => { this.areaDataItem = item this.dialogController.open() }) }) }.width('100%').margin({ top: 5 }).height("100%").justifyContent(FlexAlign.Center) } }
鸿蒙自定义弹窗传值
最新推荐文章于 2024-09-10 08:50:58 发布