KeyboardMan alternatives and similar libraries
Based on the "Keyboard" category.
Alternatively, view KeyboardMan alternatives based on common mentions on social networks and blogs.
-
IQKeyboardManager
Codeless drop-in universal library allows to prevent issues of keyboard sliding up and cover UITextField/UITextView. Neither need to write any code nor any setup required and much more. -
TPKeyboardAvoiding
A drop-in universal solution for moving text fields out of the way of the keyboard in iOS -
IHKeyboardAvoiding
IHKeyboardAvoiding is an elegant solution for keeping any UIView visible when the keyboard is being shown - no UIScrollView required! -
YYKeyboardManager
iOS utility class allows you to access keyboard view and track keyboard animation. -
Toolbar
Awesome autolayout Toolbar. Toolbar is a library for iOS. You can easily create chat InputBar. -
AutoKeyboardScrollView
AutoKeyboardScrollView is an UIScrollView subclass which makes showing and dismissing keyboard for UITextFields much easier. So called keyboard avoidance. -
RSKKeyboardAnimationObserver
DISCONTINUED. Showing / dismissing keyboard animation in simple UIViewController category.
InfluxDB - Purpose built for real-time analytics at any scale.
* Code Quality Rankings and insights are calculated and provided by Lumnify.
They vary from L1 to L5 with "L5" being the highest.
Do you think we are missing an alternative of KeyboardMan or a related project?
README
KeyboardMan
We may need keyboard infomation from keyboard notifications to do animation. However, the approach is complicated and easy to make mistakes. Even more, we need to handle the bug of system fire keyboard notifications.
But KeyboardMan will make it simple & easy.
ε¦ζδΈζδ»η»γ
Requirements
Swift 4.2, iOS 8.0
(Swift 3, use version 1.1.0)
Example
import KeyboardMan
Do animation with keyboard appear/disappear:
let keyboardMan = KeyboardMan()
keyboardMan.animateWhenKeyboardAppear = { [weak self] appearPostIndex, keyboardHeight, keyboardHeightIncrement in
print("appear \(appearPostIndex), \(keyboardHeight), \(keyboardHeightIncrement)\n")
if let self = self {
self.tableView.contentOffset.y += keyboardHeightIncrement
self.tableView.contentInset.bottom = keyboardHeight + self.toolBar.frame.height
self.toolBarBottomConstraint.constant = keyboardHeight
self.view.layoutIfNeeded()
}
}
keyboardMan.animateWhenKeyboardDisappear = { [weak self] keyboardHeight in
print("disappear \(keyboardHeight)\n")
if let self = self {
self.tableView.contentOffset.y -= keyboardHeight
self.tableView.contentInset.bottom = self.toolBar.frame.height
self.toolBarBottomConstraint.constant = 0
self.view.layoutIfNeeded()
}
}
For more specific information, you can use keyboardInfo that KeyboardMan post:
keyboardMan.postKeyboardInfo = { [weak self] keyboardMan, keyboardInfo in
// TODO
}
Check the demo for more information.
Installation
Feel free to drag KeyboardMan.swift
to your iOS Project. But it's recommended to use Carthage (or CocoaPods).
Carthage
github "nixzhu/KeyboardMan"
CocoaPods
pod 'KeyboardMan'
Contact
NIX @nixzhu
License
KeyboardMan is available under the MIT license. See the LICENSE file for more info.
*Note that all licence references and agreements mentioned in the KeyboardMan README section above
are relevant to that project's source code only.