Repolode
hackiftekhar

hackiftekhar/IQKeyboardManager

Готовая к подключению библиотека для iOS, которая не даёт клавиатуре перекрывать UITextField и UITextView, — без дополнительного кода.

Звёзды
16,619
Форки
2,441
Открытые issues
10
Последний коммит
в прошлом месяце

Что это?

Когда в приложении для iOS появляется клавиатура, она часто перекрывает UITextField или UITextView, в который вводит текст пользователь. IQKeyboardManager решает эту проблему автоматически: достаточно включить библиотеку, и она скорректирует положение view, чтобы активное поле ввода оставалось над клавиатурой. Для этого не нужно писать отдельный код для каждого экрана.

Библиотека работает с UIScrollView, UITableView и UICollectionView, поддерживает все ориентации интерфейса и позволяет настроить расстояние между клавиатурой и полем. Включать и выключать её можно на уровне класса, например для отдельных экранов.

Swift-версия IQKeyboardManagerSwift разделена на subspec, поэтому можно подключать только нужные дополнительные компоненты: панель Previous/Next/Done, обработку клавиши Return, скрытие клавиатуры по нажатию, настройки её внешнего вида и UITextView с поддержкой placeholder. Библиотеку можно установить через CocoaPods, Carthage и Swift Package Manager; требуется iOS 13.0 или новее.

Ключевые возможности

  • 01Автоматически оставляет активный UITextField или UITextView видимым над клавиатурой.
  • 02Работает с UIScrollView, UITableView и UICollectionView без создания подклассов.
  • 03Поддерживает все ориентации интерфейса и позволяет настроить расстояние до клавиатуры.
  • 04Дополнительные subspec добавляют панель Previous/Next/Done, обработку клавиши Return и скрытие клавиатуры по нажатию.
  • 05Включает настройки внешнего вида клавиатуры и UITextView с поддержкой placeholder.

Сценарии использования

  • Добавление обработки клавиатуры в существующие приложения для iOS с экранами входа или формами.
  • Предотвращение перекрытия полей ввода клавиатурой в таблицах и коллекциях.
  • Быстрое добавление в формы панели Done/Next без написания собственных accessory view.

Быстрый старт

  1. 1

    Добавьте pod в Podfile

    pod 'IQKeyboardManagerSwift'
  2. 2

    Включите IQKeyboardManager в AppDelegate с помощью IQKeyboardManager.shared.isEnabled = true

Что важно знать

  • Поддерживается только iOS; другие платформы не поддерживаются.
  • Автор не рекомендует включать его в качестве зависимости в сторонние SDK и библиотеки при их распространении.
  • Установка из исходного кода не поддерживается начиная с версии 7.2.0.

Темы

Частые вопросы

Что такое IQKeyboardManager?
Готовая к подключению библиотека для iOS, которая не даёт клавиатуре перекрывать UITextField и UITextView, — без дополнительного кода. Когда в приложении для iOS появляется клавиатура, она часто перекрывает UITextField или UITextView, в который вводит текст пользователь. IQKeyboardManager решает эту проблему автоматически: достаточно включить библиотеку, и она скорректирует положение view, чтобы активное поле ввода оставалось над клавиатурой. Для этого не нужно писать отдельный код для каждого экрана.
IQKeyboardManager можно использовать бесплатно? Какая у него лицензия?
IQKeyboardManager распространяется с открытым исходным кодом под лицензией MIT. Перед использованием в коммерческих продуктах проверьте условия лицензии.
IQKeyboardManager всё ещё поддерживается?
Обновлялся за последние 6 месяцев. Последний коммит в IQKeyboardManager — 28 сент. 2026 г..
Для чего можно использовать IQKeyboardManager?
Добавление обработки клавиатуры в существующие приложения для iOS с экранами входа или формами. Предотвращение перекрытия полей ввода клавиатурой в таблицах и коллекциях. Быстрое добавление в формы панели Done/Next без написания собственных accessory view.
Как установить IQKeyboardManager?
Добавьте pod в Podfile: pod 'IQKeyboardManagerSwift' Включите IQKeyboardManager в AppDelegate с помощью IQKeyboardManager.shared.isEnabled = true
Где скачать IQKeyboardManager?
Исходный код и инструкции по установке — на GitHub: https://github.com/hackiftekhar/IQKeyboardManager

Описание создано ИИ на основе README проекта. Статистика GitHub обновляется ежедневно.

Похожие проекты

Фреймворк логирования для платформ Apple (macOS, iOS, tvOS, watchOS, visionOS), который направляет сообщения в несколько логгеров: консоль, файлы и пользовательские бэкенды.

13,3 тыс.+3 за неделю2,3 тыс.Objective-CBSD-3-ClauseОбновлён позавчера