HarmonyOS CustomDialogController套用Scroll

代码如下:

@CustomDialog  
export struct PromptDialog {  
  private promptTitle: string = '温馨提示';  
  private promptContent: string = '';  
  private promptCancel: string = '取消';  
  private promptConfirm: string = '确定';  
  cancelClicked?: () => void;  
  confirmClicked?: () => void;  
  controller: CustomDialogController;  
  build() {  
    Column() {  
      Text(this.promptTitle)  
        .fontSize(15)  
        .fontColor('#222222')  
        .padding(16)  
        .fontWeight(FontWeight.Bold)  
        .width('100%')  
        .textAlign(TextAlign.Center)  
      Scroll() {  
        Column() {  
          Text(this.promptContent)  
            .fontSize(15)  
            .lineHeight(25)  
            .margin({ left: 16, right: 16 })  
            .fontColor('#555555')  
  
          Row() {  
            Button(this.promptCancel)  
              .layoutWeight(1)  
              .fontSize(13)  
              .height('100%')  
              .fontColor('#FFFFFF')  
              .backgroundColor('#555555')  
              .onClick(() => {  
                this.cancelClicked?.()  
              })  
  
            Button(this.promptConfirm)  
              .layoutWeight(1)  
              .fontSize(13)  
              .height('100%')  
              .margin({ left: 20 })  
              .fontColor('#FFFFFF')  
              .backgroundColor($r('app.color.theme_color'))  
              .onClick(() => {  
                this.confirmClicked?.()  
              })  
          }  
          .width('100%')  
          .height(35)  
          .margin({  
            left: 30, top: 16, right: 30, bottom: 16  
          })  
        }  
      }  
    }  
  }  
}

想要实现弹窗内容超长可滚动,但是超长后按钮不显示。

HarmonyOS
2024-10-12 11:36:43
浏览
收藏 0
回答 1
待解决
回答 1
按赞同
/
按时间
FengTianYa

将margin下的bottom设置高一点按钮就可以出来了。

Row() {  
  Button(this.promptCancel)  
    .layoutWeight(1)  
    .fontSize(13)  
    .height('100%')  
    .fontColor('#FFFFFF')  
    .backgroundColor('#555555')  
    .onClick(() => {  
     })  
  Button(this.promptConfirm)  
    .layoutWeight(1)  
    .fontSize(13)  
    .height('100%')  
    .margin({ left: 20 })  
    .fontColor('#FFFFFF')  
    .onClick(() => {  
    })  
}  
.width('100%')  
.height(35)  
.margin({  
  left: 30, top: 16, right: 30, bottom: 66  
})

目前Scroll组件显示不全的原因是未设置高度,设置高度即可解决。这边是否可以固定一个弹窗打开的高度比如:Scroll(){…} .height(500),是可以解决问题的。

分享
微博
QQ
微信
回复
2024-10-12 15:28:48
相关问题
HarmonyOS TabContent无法套用在子组件
390浏览 • 1回复 待解决
HarmonyOS CustomDialogController问题
582浏览 • 1回复 待解决
HarmonyOS CustomDialogController封装
43浏览 • 1回复 待解决
HarmonyOS CustomDialogController如何封装
472浏览 • 1回复 待解决
HarmonyOS CustomDialogController 不显示
304浏览 • 1回复 待解决
HarmonyOS CustomDialogController组件问题
417浏览 • 1回复 待解决
HarmonyOS Scroll监听
50浏览 • 1回复 待解决
CustomDialogController禁用返回键
352浏览 • 1回复 待解决
HarmonyOS Scroll布局相关
26浏览 • 1回复 待解决
HarmonyOS scroll组件问题
80浏览 • 1回复 待解决
HarmonyOS Scroll使用问题
21浏览 • 1回复 待解决