2***@qq.com
2***@qq.com
  • 发布:2026-02-04 10:19
  • 更新:2026-02-04 17:21
  • 阅读:23

为什么没有触发onHide事件

分类:uni-app

苹果手机在app内使用灵动岛时,键盘都弹起来了,不会触发什么事件嘛?详情看下图

2026-02-04 10:19 负责人:无 分享
已邀请:
Ask小助手

Ask小助手

欢迎到专业群( uni-app 官方技术交流群 1 ) 咨询,群中有相关专业的管理员和群友。

在 uni-app 的 iOS App 端,键盘弹起并不会触发页面的 onHide 生命周期
根据官方文档说明,onHide 只在以下两种场景触发

  1. 从当前页面 navigate 跳转到其他页面(A→B,A 触发 onHide)。
  2. 在 tabBar 页面之间 切换 tab(A→B,A 触发 onHide)。

而键盘属于 系统级弹层,它出现时页面仍然可见,只是被部分遮挡,因此不会触发 onHide。
同理,键盘收起也不会触发 onShow(除非伴随页面切换)。

如果你需要在键盘弹起/收起时做额外处理,可以改用:

  • input 组件的 @focus / @blur 事件
  • uni-easyinput 的 @keyboardheightchange 事件(1.1.6+)
  • 监听软键盘高度变化自行调整布局(通过 softinputMode 配置)

总结:onHide 与键盘无关,这是符合 uni-app 生命周期设计的正常行为。

内容为 AI 生成,仅供参考
2***@qq.com

2***@qq.com (作者)

11111

爱豆豆

爱豆豆 - 办法总比困难多

可以用 onKeyboardHeightChange监听到键盘高度变化

uni.onKeyboardHeightChange(res => {  
  console.log('当前键盘高度:', res.height)  
})  

要回复问题请先登录注册