uniapp: IOS微信小程序输入框部分被软键盘遮挡问题

一、问题描述

在IOS微信小程序中输入框底部被软键盘遮挡:

二、解决方案

小程序输入框被软键盘遮挡一部分的问题可以通过以下几种方法解决‌:

‌1.使用cursorSpacing属性‌ :在input或textarea元素上添加cursorSpacing属性,并设置一个合适的值(如20),这样可以留出光标到软键盘的距离,避免输入框被遮挡‌。

‌2.动态调整输入框位置‌

‌(1)获取键盘高度‌:给输入框添加keyboardheightchange事件,通过事件获取键盘的高度。例如:

keyboardheightchange(event) {
  let height = event.detail.height || 0;
  this.keyBoardHeight = height 
}

(2)调整输入框位置‌:根据获取到的键盘高度动态调整输入框的位置。例如,将发送消息的盒子设置为固定位置,并动态调整其bottom值:

<div class="send-msg" :style="{bottom: keyBoardHeight +'px'}">
  <textarea @keyboardheightchange="keyboardheightchange"></textarea>
</div >

注意:

(1)使用fixed属性‌:在弹窗定位中时需要加入fixed属性,否则在软键盘弹出时输入框可能不会显示在软键盘上面‌。

‌(2)处理安全区域‌:在iPhone X等有底部安全区域的设备上,可能需要特别处理安全区域。例如,在u-popup组件中设置safeAreaInsetBottom为false,以确保输入框在软键盘弹出时不会被遮挡‌。

相关推荐
小小码神Sundayx37 分钟前
三、模板与配置(下)
笔记·微信小程序
公子艾1 小时前
uniapp设置tabBar高斯模糊并设置tabBar高度占位
uni-app
转角羊儿3 小时前
uni-app文章列表制作⑧
前端·javascript·uni-app
糊涂涂是个小盆友4 小时前
前端 - 使用uniapp+vue搭建前端项目(app端)
前端·vue.js·uni-app
计算机-秋大田4 小时前
基于微信小程序的乡村研学游平台设计与实现,LW+源码+讲解
java·spring boot·微信小程序·小程序·vue
阿巴阿巴Ovo5 小时前
uniapp中多角色导致tabbar过多的解决方式
uni-app
小马哥编程7 小时前
【微信小程序】报修管理
微信小程序·小程序
Json____8 小时前
学法减分交管12123模拟练习小程序源码前端和后端和搭建教程
前端·后端·学习·小程序·uni-app·学法减分·驾考题库
云深时现月9 小时前
jenkins使用cli发行uni-app到h5
前端·uni-app·jenkins