awesome-repositories.com
Blog
MCP
awesome-repositories.com

Discover the best open-source repositories with AI-powered search.

ExploreCurated searchesOpen-source alternativesSelf-hosted softwareBlogSitemap
ProjectMCP serverAboutHow we rankPress
LegalPrivacyTerms
© 2026 Bringes Technology SRL·VAT RO45896025·hello@awesome-repositories.com
michaeltyson avatar

michaeltyson/TPKeyboardAvoiding

0
View on GitHub↗
5,795 stars·916 forks·Objective-C·Zlib·13 viewsatastypixel.com/blog/a-drop-in-universal-solution-for-moving-text-fields-out-of-the-way-of-the-keyboard↗

TPKeyboardAvoiding

TPKeyboardAvoiding is a drop-in iOS library that automatically adjusts scroll views to keep text fields visible when the keyboard appears. It provides a UIView subclass that can replace existing scroll views without modifying existing code or delegates, making it straightforward to integrate into UIKit-based form interfaces.

The library handles keyboard avoidance by monitoring keyboard notifications and synchronizing frame animations with the keyboard's appearance and disappearance. It also adds an input accessory toolbar with "Next" and "Done" buttons to the keyboard, enabling field navigation by traversing the responder chain to find the next text field or text view. This approach improves form input usability on iOS by preventing keyboard occlusion and supporting keyboard-based field focus cycling without manual tapping.

Features

  • Keyboard-Aware Scroll Views - A drop-in solution that automatically adjusts scroll views to keep text fields visible when the keyboard appears in iOS apps.
  • Keyboard-Based Field Focus Cyclers - Cycles focus through text fields by adding a Next button on the keyboard that moves to the next field without manual tapping.
  • Keyboard-Based Field Navigators - Adds Next and Done buttons to the iOS keyboard to cycle focus between text fields without manual tapping.
  • Keyboard-Based Field Focus Cyclers - Adds Next and Done buttons to the iOS keyboard for cycling focus between text fields without manual tapping.
  • Drop-In Scroll View Subclasses - Provides a UIView subclass that replaces existing scroll views without modifying existing code or delegates.
  • Keyboard Notification Observers - Monitors UIKeyboardWillShow and UIKeyboardWillHide notifications to trigger automatic view adjustments.
  • Responder Chain Text Field Traversers - Walks the view hierarchy to find the next UITextField or UITextView when the Next button is tapped.
  • Keyboard Accessory Toolbars - Adds a custom toolbar with Next and Done buttons to the keyboard for field navigation.
  • Keyboard-Avoiding Form Inputs - Improves form input usability on iOS by preventing keyboard occlusion and enabling keyboard-based field navigation.
  • Keyboard-Avoiding Form Inputs - Improves form usability on iOS by keeping text fields editable above the keyboard and enabling keyboard-based field navigation.
  • iOS Keyboard Event Trackers - Automatically moves text fields out of the way when the keyboard appears in iOS apps.
  • Animation Frame Synchronization - Animates scroll view frame changes in sync with keyboard appearance and disappearance using UIView animations.
  • Keyboard Management - Automatically scrolls content when keyboard appears.

Star history

Star history chart for michaeltyson/tpkeyboardavoidingStar history chart for michaeltyson/tpkeyboardavoiding

How this analysis was created: This summary and feature list are AI-generated from collected project material and can contain mistakes. Stars, license and language are imported from GitHub. Inclusion does not mean that we have tested or audited this project. Check the source documentation for any feature you depend on. Learn more on our About page.

AI search

Explore more awesome repositories

Describe what you need in plain English — the AI ranks thousands of curated open-source projects by relevance.

Start searching with AI

Projects sharing features with TPKeyboardAvoiding

These projects share indexed features with TPKeyboardAvoiding. Shared tags can include platform or build tooling; verify the primary use case before treating a result as a replacement.
  • apsl/react-native-keyboard-aware-scroll-viewAPSL avatar

    APSL/react-native-keyboard-aware-scroll-view

    5,377View on GitHub↗

    This project provides component wrappers and managers that automate the synchronization between software keyboard visibility and the scroll position of active input elements. It is a cross-platform mobile keyboard scroll view designed to keep active text inputs visible above the software keyboard. The library functions as a keyboard-aware component wrapper that detects software keyboard events to prevent input fields from being obscured. It utilizes an automatic input focus scroller to calculate the necessary scroll position and maintain focus on the active cursor. The system covers mobile U

    JavaScriptkeyboardreactreact-components
    View on GitHub↗5,377
  • kirillzyusko/react-native-keyboard-controllerkirillzyusko avatar

    kirillzyusko/react-native-keyboard-controller

    3,349View on GitHub↗

    This is a keyboard interaction library and manager for React Native that provides smooth animations, gesture-based dismissal, and event tracking. It serves as a cross-platform keyboard event bus, ensuring consistent keyboard show and hide behavior between iOS and Android. The project features an interactive animation driver that links native keyboard frame events directly to animated values to bypass bridge round-trips. It enables interactive keyboard dismissal via swipe gestures and includes a keyboard preloading system to eliminate first-show latency and input lag. The library provides com

    TypeScriptandroidanimationavoiding-view
    View on GitHub↗3,349
  • hackiftekhar/iqkeyboardmanagerhackiftekhar avatar

    hackiftekhar/IQKeyboardManager

    16,623View on GitHub↗

    IQKeyboardManager is an iOS keyboard management library and UI layout utility. It automatically adjusts screen layouts to prevent the software keyboard from covering text input fields. The project provides a customizable keyboard toolbar component with navigation buttons and action triggers. It enables focus management, allowing users to move between text fields via the return key or toolbar controls. The library covers keyboard layout coordination, including touch-based dismissal and offset configuration. It also includes a system for managing keyboard behaviors and appearance on a per-clas

    Swift
    View on GitHub↗16,623
  • createjs/easeljscreatejs avatar

    createjs/easeljs

    8,168View on GitHub↗

    EaselJS is a JavaScript library for creating interactive 2D graphics and animations using the HTML5 Canvas element. It functions as a 2D animation framework, a canvas scene graph manager, and an interaction wrapper for detecting and responding to mouse and touch events. The library features a rendering pipeline that utilizes WebGL to increase the drawing performance of bitmap and cached content. It organizes visual elements into a hierarchical display list, allowing nested groups of 2D graphics objects to be transformed and animated as single units. Its capabilities cover the rendering of ve

    JavaScript
    View on GitHub↗8,168
Compare all 30 related projects→

Frequently asked questions

What does michaeltyson/tpkeyboardavoiding do?

TPKeyboardAvoiding is a drop-in iOS library that automatically adjusts scroll views to keep text fields visible when the keyboard appears. It provides a UIView subclass that can replace existing scroll views without modifying existing code or delegates, making it straightforward to integrate into UIKit-based form interfaces.

What are the main features of michaeltyson/tpkeyboardavoiding?

The main features of michaeltyson/tpkeyboardavoiding are: Keyboard-Aware Scroll Views, Keyboard-Based Field Focus Cyclers, Keyboard-Based Field Navigators, Drop-In Scroll View Subclasses, Keyboard Notification Observers, Responder Chain Text Field Traversers, Keyboard Accessory Toolbars, Keyboard-Avoiding Form Inputs.

Which projects share features with michaeltyson/tpkeyboardavoiding?

Projects with overlapping indexed features include: apsl/react-native-keyboard-aware-scroll-view — This project provides component wrappers and managers that automate the synchronization between software keyboard… kirillzyusko/react-native-keyboard-controller — This is a keyboard interaction library and manager for React Native that provides smooth animations, gesture-based… hackiftekhar/iqkeyboardmanager — IQKeyboardManager is an iOS keyboard management library and UI layout utility. It automatically adjusts screen layouts… createjs/easeljs — EaselJS is a JavaScript library for creating interactive 2D graphics and animations using the HTML5 Canvas element. It… ibireme/yykit — A collection of iOS components. jeremybarbet/react-native-modalize — React Native Modalize is a customizable bottom sheet component designed for mobile applications. It functions as a…