HarmonyOS 输入法顶起bindSheet调起的底部弹窗

HarmonyOS
2024-12-24 16:53:22
浏览
收藏 0
回答 1
待解决
回答 1
按赞同
/
按时间
fox280

可在EntryAbility下设置监听键盘状态的变化,设置键盘弹起的高度,联合bindSheet增加键盘高度。

height:

this.sheetHeight+px2vp(this.keyboardHeight)
EntryAbility代码:
windowStage.getMainWindow((err, data) => {
  if (err.code) {
    console.error('Failed to obtain the main window. Cause: ' + JSON.stringify(err));
    return;
  }
  let windowClass = data;
  //1. 设置监听键盘变化,用来设置inputview 避让输入法
  try {
    windowClass.on('keyboardHeightChange', (data) => {
      console.info('keyboardHeightChange. Data: ' + JSON.stringify(data));
      AppStorage.setOrCreate('keyboardHeight', data);
      console.info(AppStorage.get('keyboardHeight'))
    });
  } catch (exception) {
    console.error('Failed to enable the listener for keyboard height changes. Cause: ' + JSON.stringify(exception));
  }
})

Index.ets

Button("transition modal 1")
  .onClick(() => {
    this.isShow = true
  })
  .fontSize(20)
  .margin(10)
  .bindSheet($$this.isShow, this.myBuilder(), {
    height: this.sheetHeight+px2vp(this.keyboardHeight),
    backgroundColor: Color.Green,
    onAppear: () => {console.log("BindSheet onAppear.")},
    onDisappear: () => {console.log("BindSheet onDisappear.")}
  })
分享
微博
QQ
微信
回复
2024-12-24 19:10:48
相关问题
HarmonyOS 自带输入法输入问题
390浏览 • 1回复 待解决
HarmonyOS 输入法光标控制
406浏览 • 1回复 待解决
输入法编程接口吗?
4960浏览 • 1回复 待解决
HarmonyOS如何监听输入法显示隐藏
874浏览 • 1回复 待解决
如何监听输入法输入内容变化?
678浏览 • 1回复 待解决
小程序输入法键盘光标问题
599浏览 • 1回复 待解决
HarmonyOS 本地模拟器怎么使用输入法
225浏览 • 1回复 待解决