Repolode
hackiftekhar

hackiftekhar/IQKeyboardManager

一个即插即用的 iOS 库,无需编写代码即可防止键盘遮挡输入框。

Star
16,619
Fork
2,441
未关闭 Issue
10
最近提交
上个月

这是什么?

iOS 应用中弹出键盘时,常常会遮住正在输入的 UITextField 或 UITextView。IQKeyboardManager 可以自动处理这一问题:启用后,它会调整视图,使当前输入框保持在键盘上方可见,无需为每个页面单独编写代码。

该库支持 UIScrollView、UITableView 和 UICollectionView,适用于所有界面方向,并可配置键盘与输入框之间保持的距离。也支持在类级别开启或关闭功能,方便在特定页面禁用。

Swift 版本 IQKeyboardManagerSwift 采用子模块(subspec)划分,可按需引入可选功能,包括 Previous/Next/Done 工具栏、返回键处理、点击空白收起键盘、键盘外观设置,以及支持占位文字的 UITextView。可通过 CocoaPods、Carthage 或 Swift Package Manager 安装,要求 iOS 13.0 及以上版本。

核心功能

  • 01自动使当前的 UITextField 或 UITextView 保持在键盘上方可见。
  • 02支持 UIScrollView、UITableView 和 UICollectionView,无需继承子类。
  • 03支持所有界面方向,并可配置键盘与输入框的距离。
  • 04可选子模块提供 Previous/Next/Done 工具栏、返回键处理和点击收起键盘功能。
  • 05支持键盘外观配置,并提供带占位文字的 UITextView。

适用场景

  • 为已有的 iOS 应用中的登录或表单页面补充键盘遮挡处理。
  • 解决包含文本输入的表格或集合视图中键盘遮挡输入框的问题。
  • 无需自定义配件视图,快速为表单添加 Done/Next 工具栏。

快速上手

  1. 1

    在 Podfile 中添加该 pod

    pod 'IQKeyboardManagerSwift'
  2. 2

    在 AppDelegate 中设置 IQKeyboardManager.shared.isEnabled = true 以启用它

使用前须知

  • 仅支持 iOS,不支持其他平台。
  • 作者不建议将其作为依赖打包进第三方 SDK 或库中。
  • 自 7.2.0 版本起不再支持源代码方式安装。

标签

常见问题

IQKeyboardManager 是什么?
一个即插即用的 iOS 库,无需编写代码即可防止键盘遮挡输入框。 iOS 应用中弹出键盘时,常常会遮住正在输入的 UITextField 或 UITextView。IQKeyboardManager 可以自动处理这一问题:启用后,它会调整视图,使当前输入框保持在键盘上方可见,无需为每个页面单独编写代码。
IQKeyboardManager 可以免费使用吗?用的什么许可证?
IQKeyboardManager 以 MIT 许可证开源。用于商业产品前,请先确认许可证条款。
IQKeyboardManager 还在维护吗?
半年内有更新。IQKeyboardManager 最近一次提交是在 2026年9月28日。
IQKeyboardManager 适合用来做什么?
为已有的 iOS 应用中的登录或表单页面补充键盘遮挡处理。 解决包含文本输入的表格或集合视图中键盘遮挡输入框的问题。 无需自定义配件视图,快速为表单添加 Done/Next 工具栏。
IQKeyboardManager 怎么安装和运行?
在 Podfile 中添加该 pod: pod 'IQKeyboardManagerSwift' 在 AppDelegate 中设置 IQKeyboardManager.shared.isEnabled = true 以启用它
在哪里获取 IQKeyboardManager?
源代码和安装说明在 GitHub 上:https://github.com/hackiftekhar/IQKeyboardManager

概要由 AI 根据项目 README 生成;GitHub 数据每日更新。

相关项目