页面上的TextInput输入框在页面底部,点击输入框弹起键盘,如何让输入框自动上移到键盘上方,避免被遮挡?

HarmonyOS 页面上的TextInput输入框在页面底部,点击输入框弹起键盘,如何让输入框自动上移到键盘上方,避免被遮挡?

HarmonyOS
2024-10-25 11:39:50
浏览
收藏 0
回答 1
回答 1
按赞同
/
按时间
superinsect

可以在EntryAbility里onWindowStageCreate中添加监听输入法高度变化的代码。

windowStage.getMainWindow((err, data) => {  
  if (err.code) {  
    console.error('Failed to obtain the main window. Cause: ' + JSON.stringify(err));  
    return;  
  }  
  // let windowClass = null;  
  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));  
  }  
})
  • 1.
  • 2.
  • 3.
  • 4.
  • 5.
  • 6.
  • 7.
  • 8.
  • 9.
  • 10.
  • 11.
  • 12.
  • 13.
  • 14.
  • 15.
  • 16.
  • 17.
  • 18.

单位是px,转换vp可以使用px2vp(value : number) : number方法,

参考链接:

https://developer.huawei.com/consumer/cn/doc/harmonyos-references-V5/ts-pixel-units-V5#像素单位转换

分享
微博
QQ
微信
回复
2024-10-25 15:27:22
相关问题
HarmonyOS 键盘遮挡输入框
752浏览 • 1回复 待解决
HarmonyOS webview输入框遮挡
806浏览 • 1回复 待解决
HarmonyOS webview里输入框键盘覆盖
725浏览 • 1回复 待解决
HarmonyOS web中输入框键盘遮住
752浏览 • 1回复 待解决
HarmonyOS 输入框屏蔽系统键盘
692浏览 • 1回复 待解决
HarmonyOS 如何控制输入框弹出键盘
1031浏览 • 1回复 待解决
H5页面输入框自动获焦弹起键盘
2803浏览 • 1回复 待解决
HarmonyOS 自定义键盘弹起后遮住输入框
1526浏览 • 1回复 待解决
HarmonyOS textInput 如何清空输入框
940浏览 • 2回复 待解决