An iOS view controller for cropping UIImage objects, with rotation, circular crop, and aspect-ratio locking, modeled on the Photos app editor.
hackiftekhar/IQKeyboardManager
A drop-in iOS library that stops the keyboard from covering UITextField and UITextView, with no code required.
- Stars
- 16,619
- Forks
- 2,441
- Open issues
- 10
- Last commit
- last month
What is it?
When an iOS app's keyboard slides up, it often covers the UITextField or UITextView the user is typing into. IQKeyboardManager handles this automatically: after you enable it, it adjusts the view so the active input field stays visible above the keyboard, without requiring per-screen code.
The library works with UIScrollView, UITableView and UICollectionView, supports all interface orientations, and lets you configure the distance kept between the keyboard and the field. Class-level enable/disable control lets you turn it off for specific screens.
The Swift version, IQKeyboardManagerSwift, is split into subspecs so you can include only the optional pieces you need, such as the Previous/Next/Done toolbar, return key handling, tap-to-resign, keyboard appearance settings, and a UITextView with placeholder support. It is installable via CocoaPods, Carthage and Swift Package Manager, and requires iOS 13.0 or later.
Key features
- 01Automatically keeps the active UITextField or UITextView visible above the keyboard.
- 02Works with UIScrollView, UITableView and UICollectionView without subclassing.
- 03Supports all interface orientations and a configurable keyboard distance.
- 04Optional subspecs add a Previous/Next/Done toolbar, return key handling and tap-to-resign.
- 05Includes keyboard appearance configuration and a UITextView with placeholder support.
Use cases
- Adding keyboard handling to existing iOS apps with login or form screens.
- Avoiding keyboard overlap in table or collection views containing text inputs.
- Quickly adding a Done/Next toolbar to forms without writing custom accessory views.
Quick start
- 1
Add the pod to your Podfile
pod 'IQKeyboardManagerSwift' - 2
Enable IQKeyboardManager in AppDelegate with IQKeyboardManager.shared.isEnabled = true
Things to know
- iOS only; it does not support other platforms.
- The author advises against shipping it as a dependency inside third-party SDKs or libraries.
- Source code installation is no longer supported since version 7.2.0.
Topics
FAQ
- What is IQKeyboardManager?
- A drop-in iOS library that stops the keyboard from covering UITextField and UITextView, with no code required. When an iOS app's keyboard slides up, it often covers the UITextField or UITextView the user is typing into. IQKeyboardManager handles this automatically: after you enable it, it adjusts the view so the active input field stays visible above the keyboard, without requiring per-screen code.
- Is IQKeyboardManager free to use? What license does it have?
- IQKeyboardManager is open source under the MIT license. Check the license terms before using it in commercial products.
- Is IQKeyboardManager still maintained?
- Updated within 6 months. The last commit to IQKeyboardManager was on Sep 28, 2026.
- What can I use IQKeyboardManager for?
- Adding keyboard handling to existing iOS apps with login or form screens. Avoiding keyboard overlap in table or collection views containing text inputs. Quickly adding a Done/Next toolbar to forms without writing custom accessory views.
- How do I install IQKeyboardManager?
- Add the pod to your Podfile: pod 'IQKeyboardManagerSwift' Enable IQKeyboardManager in AppDelegate with IQKeyboardManager.shared.isEnabled = true
- Where can I get IQKeyboardManager?
- The source code and installation instructions are on GitHub: https://github.com/hackiftekhar/IQKeyboardManager
Summary generated by AI from the project's README. GitHub stats refresh daily.
Related projects
Official open-source iOS app repository for WordPress, letting users build and run the WordPress mobile app from source in Xcode.
An iOS/tvOS framework that renders UIKit-style interfaces asynchronously on background threads to keep scrolling smooth.
A data-driven UICollectionView framework from Instagram for building fast, flexible iOS lists with automatic diffing.
A benchmark that times how long Xcode takes to compile a large CocoaPods-based project, to compare Mac performance for development.
A logging framework for Apple platforms (macOS, iOS, tvOS, watchOS, visionOS) that routes log messages to multiple loggers such as console, files and custom backends.