Today we'll look at an interesting library from Evan Dekhayser called KBKit. It extends UIKit to add support for navigating around using a physical keyboard. (Think either bluetooth or other keyboard connected to an iPad, but would also work on iPhone.) Let's take a look.
KBKit consists of a few subclasses of common UIKit classes. KBTableView adds Up Arrow, Down Arrow, and Return Key functionality to UITableView. Very cool.
let tableView = KBTableView(frame: CGRect.zero, style: .Plain)
tableView.onSelection = { (indexPath: NSIndexPath) in
// called when user pressed 'Return' or 'Command + D'
}
tableView.onFocus = { (current: NSIndexPath?, previous: NSIndexPath?) in
// called as user navigates with arrow keys
}
We can use KBNavigationController to gain a Command + Left Arrow shortcut for going "back" (i.e. popping to the previous view controller in the stack).
Last but not least, KBTabBarController adds support for pressing Command + 1, Command + 2, Command + 3, etc. to change the currently selected tab. It supports up to 5 tabs. Neat!
More info about KBKit can be found at git.io/kbkit