问题:
弹出的键盘, 点击键盘上的收起键盘的按钮, 无回调.
安卓: 键盘上自带收起键盘
iOS: 安装第三方键盘可以尝试
描述:
通常, 我们判断键盘收起, 是判断input或者 textarea 的失去焦点, 作为收起键盘的依据.
但是, 当我们点击键盘上的收起键盘, 上述判断就无效了.
解决:
因为我们还需要加上如下的操作:
- 添加事件绑定, 观察键盘高度的变化
bindkeyboardheightchange="keyboardheightchange"
- 实现关联回调
keyboardheightchange: function(e) {
let { height, duration } = e.detail;
const isShow = height > 0;
this.setData({
showKeyBoard: isShow
})
},
当点击安卓或iOS键盘上的收起按钮时,通常的输入框焦点判断无法检测到键盘关闭。为了解决这个问题,可以绑定键盘高度变化事件,通过监听键盘高度的变化来判断是否收起键盘。在键盘高度改变的回调中,根据高度是否大于0来确定键盘是否显示,从而实现准确的键盘状态跟踪。
4330





