illyabusigin / CYRKeyboardButton

A drop-in keyboard button that mimics the look, feel, and functionality of the native iOS keyboard buttons
MIT License
351 stars 46 forks source link

CYRKeyboardButton

Version License Platform

by Illya Busigin

Purpose

CYRKeyboardButton is a drop-in keyboard button that mimics the look, feel, and functionality of the native iOS keyboard buttons. When building QED Solver for iOS I needed to replicate the look and feel of the native keyboard buttons. CYRKeyboardButton aims to be the definitive keyboard button control for those looking to replicate the standard keyboard functionality. Features include:

Screenshot

Requirements

iOS 7.0 or later (with ARC) for iPhone, iPad and iPod touch

Installation

To use CYRKeyboardButton, just drag the class files into your project.. You can create CYRKeyboardButton instances programatically, or create them in Interface Builder by dragging an ordinary UIView into your view and setting its class to CYRKeyboardButton.

If you are using Interface Builder, to set the custom properties of CYRKeyboardButton (ones that are not supported by regular UIViews) either create an IBOutlet for your view and set the properties in code, or use the User Defined Runtime Attributes feature in Interface Builder (introduced in Xcode 4.2 for iOS 5+).

Usage

CYRKeyboardButton *keyboardButton = [CYRKeyboardButton new];
keyboardButton.translatesAutoresizingMaskIntoConstraints = NO;
keyboardButton.input = @"A";
keyboardButton.inputOptions = @[@"A", @"B", @"C", @"D"];
keyboardButton.textInput = self.textView;
[self.view addSubview:keyboardButton];

Example

CYRKeyboardButton includes an iPhone example project that demonstrates how to use CYRKeyboardButtons in an input accessory view with nifty autolayout sizing/spacing.

Bugs & Feature Requests

There is no support offered with this component. If you would like a feature or find a bug, please submit a feature request through the GitHub issue tracker.

Pull-requests for bug-fixes and features are welcome!

Attribution

CYRKeyboardButton uses portions of code from the following sources.

Component Description License
TurtleBezierPath UIBezierPath subclass for Turtle Graphics MIT