HarmonyOS CustomDialog和TextInput弹起后,键盘与Dialog中间有间距

使用调用CustomDialogController.open()后,Dialog出现TextInput自动focus,系统键盘拉起。但是Dialog和系统键盘之间出现了莫名间距。

HarmonyOS CustomDialog和TextInput弹起后,键盘与Dialog中间有间距 -鸿蒙开发者社区

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

弹窗位置调整可以将customStyle设置为true并且给弹窗内部的column布局设置偏移.offset({ x: 0, y: xx})。参考示例如下:

@Entry
@Component
struct KeyboadPage4 {
  @State content: string = 'CustomDialogPage';
  customDialogController: CustomDialogController = new CustomDialogController({
    builder: CustomEditDialogWidget({}),
    alignment: DialogAlignment.Bottom,
    maskColor: Color.Grey,
    customStyle: true
  });

  build() {
    Row() {
      Column() {
        Button("弹框").onClick(() => {
          this.customDialogController.open();
        })
      }
      .width('100%')
    }.height('100%')
  }
}

@CustomDialog
export struct CustomEditDialogWidget {
  controller?: CustomDialogController;

  build() {
    Column() {
      Text(`请输入`).margin({ top: 20 })
      TextInput({ placeholder: `请输入` })
        .width("90%")
        .height('30%')
        .backgroundColor(Color.White)
        .borderWidth(1)
        .borderColor("#666")
        .borderRadius(10)
        .margin({ top: 20, bottom: 20 })
        .defaultFocus(true)
    }
    .width("80%")
    .borderRadius(15)
    .backgroundColor(Color.White)
    .borderWidth(1)
    .offset({ x: 0, y: 16 })
  }
}
分享
微博
QQ
微信
回复
1天前
相关问题
HarmonyOS TextInput组件弹起键盘
27浏览 • 1回复 待解决
CustomDialog键盘的问题
580浏览 • 1回复 待解决
HarmonyOS 使用自定义相机左边有间距
132浏览 • 1回复 待解决
HarmonyOS dialog键盘
203浏览 • 1回复 待解决
怎么监听键盘弹起关闭事件?
2900浏览 • 1回复 待解决
HarmonyOS CustomDialog底部默认间距
516浏览 • 1回复 待解决
HarmonyOS TextInput键盘相关问题咨询
678浏览 • 1回复 待解决
HarmonyOS 不想弹起系统键盘
96浏览 • 1回复 待解决
HarmonyOS Textinput如何实现中间插入
470浏览 • 1回复 待解决