HarmonyOS bindContentCover绑定自定义弹窗如何修改里面组件样式?

使用 bindContentCover 在页面上绑定了 1个@Builder自定义弹窗,自定义弹窗里面有个List组件,我点击List组件,希望ListItem的样式发生变化,如何做呢?

HarmonyOS
2024-09-27 12:13:06
浏览
收藏 0
回答 1
待解决
回答 1
按赞同
/
按时间
superinsect

demo如下:

class Tmp {  
  selectIndex: number = -1  
  reasonList:RefundReason[] = []  
  clickAction = (index:number) => {}  
}  
export class RefundReason {  
  reason:string = ''  
}  
  
export const refundReasonArray:RefundReason[] = [  
  { reason:'1111111111'},  
  { reason:'22222222'},  
  { reason:'3333333'},  
  { reason:'4444444'},  
  { reason:'5555555'},  
]  
@Entry  
@Component  
export default struct MyFollowReporterPage{  
  @State isShow:boolean = true  
  @State selectIndex:number = -1  
  @State refundReasonArray:RefundReason[] = refundReasonArray  
  ListItemClick(index:number) {  
    this.selectIndex = index  
  }  
  build(){  
    Column()  
      .bindContentCover(this.isShow,  
        KsResignAccountBuilder({  
          reasonList:this.refundReasonArray,  
          selectIndex:this.selectIndex,  
          clickAction:(index) => {  
            this.ListItemClick(index)  
          }  
        })  
      )  
  }  
}  
  
@Builder  
function KsResignAccountBuilder(params:Tmp) {  
  Column() {  
    List({ space: 0, initialIndex: 0 }) {  
      ForEach(params.reasonList, (item: RefundReason, index: number) => {  
        ListItem() {  
          Flex({  
            direction: FlexDirection.Row,  
            alignItems: ItemAlign.Center,  
            justifyContent: FlexAlign.SpaceBetween  
          }) {  
            Text(item.reason)  
              .fontColor(params.selectIndex == index ? Color.Red : Color.Black)  
              .fontSize(15)  
          }  
        }.height(50).onClick(() => {  
          params.clickAction(index)  
        })  
      }, (item: RefundReason) => JSON.stringify(item))  
    }  
  }.backgroundColor(Color.Gray).margin({top:100})  
}
分享
微博
QQ
微信
回复
2024-09-27 17:18:42
相关问题
HarmonyOS如何自定义视频组件样式
324浏览 • 1回复 待解决
如何自定义Video组件控制栏样式
2239浏览 • 1回复 待解决
鸿蒙组件toast自定义样式
8654浏览 • 1回复 待解决
HarmonyOS 自定义Slider样式
222浏览 • 1回复 待解决
自定义弹窗自定义转场动画
896浏览 • 1回复 待解决
HarmonyOS 自定义弹窗选择
254浏览 • 1回复 待解决
自定义组件的传值和绑定
816浏览 • 1回复 待解决
HarmonyOS 如何制作自定义加载弹窗
230浏览 • 1回复 待解决
如何自定义弹窗中再次弹窗
2115浏览 • 1回复 待解决
自定义弹窗如何嵌套使用
1407浏览 • 1回复 待解决
HarmonyOS 自定义弹窗的问题
488浏览 • 1回复 待解决
HarmonyOS 自定义弹窗CustomDialog问题
436浏览 • 1回复 待解决
HarmonyOS 全局自定义弹窗demo
194浏览 • 1回复 待解决
如何设置自定义弹窗位置
1953浏览 • 1回复 待解决
HarmonyOS 自定义弹窗 (CustomDialog)问题
180浏览 • 1回复 待解决