Latest 0.2.5
Homepage https://github.com/podkovyrin/Keyboardy
License MIT
Platforms ios 8.0, requires ARC
Frameworks UIKit
Authors

Version
Carthage Compatible
License
Platform

Description

Keyboardy extends UIViewController with few simple methods and provides delegate for handling keyboard appearance notifications.

  • Keyboardy is just wrapper on UIKeyboardWillShowNotification and UIKeyboardWillHideNotification notifications.
  • Supports both AutoLayout and frame-based animations.
  • Swift implementation.
  • Without any hacks like method swizzling and magic numbers (ex., curve << 16).

Keyboardy Demo GIF

Usage

  • Import Keyboardy module

    import Keyboardy
  • Register for keyboard notifications

    override func viewWillAppear(_ animated: Bool) {
    super.viewWillAppear(animated)
    
    registerForKeyboardNotifications(self)
    }
  • Unregister from keyboard notifications

    override func viewWillDisappear(_ animated: Bool) {
    super.viewWillDisappear(animated)
    
    unregisterFromKeyboardNotifications()
    }
  • Implement KeyboardStateDelegate

    extension ViewController: KeyboardStateDelegate {
    
    func keyboardWillTransition(_ state: KeyboardState) {
        // keyboard will show or hide
    }
    
    func keyboardTransitionAnimation(_ state: KeyboardState) {
        switch state {
        case .activeWithHeight(let height):
            textFieldContainerBottomConstraint.constant = height
        case .hidden:
            textFieldContainerBottomConstraint.constant = 0.0
        }
    
        view.layoutIfNeeded()
    }
    
    func keyboardDidTransition(_ state: KeyboardState) {
        // keyboard animation finished
    }
    }

Example

To run the example project, clone the repo, and run pod install from the Example directory first.

Requirements

Swift 3, iOS 8

Installation via CocoaPods

Keyboardy is available through CocoaPods. To install
it, simply add the following line to your Podfile:

pod "Keyboardy"

Installation via Carthage

Carthage is a decentralized dependency manager that automates the process of adding frameworks to your Cocoa application.

You can install Carthage with Homebrew using the following command:

$ brew update
$ brew install carthage

To integrate Keyboardy into your Xcode project using Carthage, specify it in your Cartfile:

github "podkovyrin/Keyboardy"

Author

Andrew Podkovyrin, [email protected]

License

Keyboardy is available under the MIT license. See the LICENSE file for more info.

Latest podspec

{
    "name": "Keyboardy",
    "version": "0.2.5",
    "summary": "UIViewController extension for convenient keyboard management.",
    "description": "Keyboardy extends UIViewController with few simple methods and provides delegate for handling keyboard appearance notifications.",
    "homepage": "https://github.com/podkovyrin/Keyboardy",
    "license": "MIT",
    "authors": {
        "Andrew Podkovyrin": "[email protected]"
    },
    "source": {
        "git": "https://github.com/podkovyrin/Keyboardy.git",
        "tag": "0.2.5"
    },
    "social_media_url": "https://twitter.com/podkovyr",
    "platforms": {
        "ios": "8.0"
    },
    "requires_arc": true,
    "source_files": "Pod/**/*",
    "frameworks": "UIKit"
}

Pin It on Pinterest

Share This