uni-app nvue app 安卓端 input @focus 无法获取软键盘高度

uni-app nvue app 安卓端 input @focus 无法获取软键盘高度

开发环境 版本号 项目创建方式
Windows 10 3.1.10 HBuilderX
### 示例代码:


```html
<input  
type="text"  
confirm-type="send"  
v-model="iptDate"  
class="flex7 ipt size26 padL20"  
adjust-position="false"
[@input](/user/input)="iptHandle"
auto-height="true"
cursor-spacing="20"  
focus="focusS"
[@keyboardheightchange](/user/keyboardheightchange)="keyboardheightchange"
[@focus](/user/focus)="focusInputis"
[@confirm](/user/confirm)="hidenInputs"
/>

操作步骤:

  • 安卓端 nvue @focus 无效

### 预期结果:


- 点击input 触发 [@focus](/user/focus)  获取到软键盘高度

实际结果:

  • nvue 安卓端 input @focus 获取的detail.height 为 0

### bug描述:


- nvue 安卓端 input [@focus](/user/focus)  获取的detail.height 为 0

更多关于uni-app nvue app 安卓端 input @focus 无法获取软键盘高度的实战教程也可以访问 https://www.itying.com/category-93-b0.html

1 回复

更多关于uni-app nvue app 安卓端 input @focus 无法获取软键盘高度的实战教程也可以访问 https://www.itying.com/category-93-b0.html


在 nvue 安卓端,@focus 事件确实无法直接获取软键盘高度,这是 nvue 的已知限制。建议使用 @keyboardheightchange 事件来监听软键盘高度变化,这是专门用于此场景的 API。

修改你的代码,将获取软键盘高度的逻辑移到 keyboardheightchange 事件中:

keyboardheightchange(e) {
    console.log('软键盘高度:', e.detail.height);
    // 在这里处理软键盘高度逻辑
}
回到顶部