Skip to content
This repository has been archived by the owner on Jan 18, 2022. It is now read-only.
/ APNumberPad Public archive
forked from podkovyrin/APNumberPad

Full clone of iOS number keyboard with customizable function button.

License

Notifications You must be signed in to change notification settings

fuggly/APNumberPad

 
 

Repository files navigation

APNumberPad

CI Status Version License Platform

APNumberPad is a custom keyboard for iOS allows you to create a keyboard inputView that looks and feels just like the iPhone keyboard with UIKeyboardTypeNumberPad as keyboardType. Also APNumberPad provides customizable left-function button.

APNumberPad

Features

  • FULLY repeats default iOS keyboard look'n'feel (input with "tap by tap", pan over keyboard and release finger on button, holding clear button, ...)
  • Device rotation
  • Customizable left function button
  • Customizable keyboard appearence (see APNumberPadStyle.h)
  • UITextField and UITextView support (or any other UIResponder object that responds to UITextInput protocol)
  • Input clicks
  • iPhone X (safe area) support

Example

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

// in .h:
#import <APNumberPad/APNumberPad.h>

@interface ExampleViewController : UIViewController <APNumberPadDelegate>

// in .m:

UITextField *textField = [[UITextField alloc] initWithFrame:CGRectZero];
textField.inputView = ({
    APNumberPad *numberPad = [APNumberPad numberPadWithDelegate:self];
    // configure function button
    //
    [numberPad.leftFunctionButton setTitle:@"Func" forState:UIControlStateNormal];
    numberPad.leftFunctionButton.titleLabel.adjustsFontSizeToFitWidth = YES;
    numberPad;
});

#pragma mark - APNumberPadDelegate

- (void)numberPad:(APNumberPad *)numberPad functionButtonAction:(UIButton *)functionButton textInput:(UIResponder<UITextInput> *)textInput {
    [textInput insertText:@"#"];
}

Requirements

iOS 8.0 or later.

Notes

Inspired by https://github.com/kulpreetchilana/Custom-iOS-Keyboards and http://stackoverflow.com/questions/13205160/how-do-i-retrieve-keystrokes-from-a-custom-keyboard-on-an-ios-app/13205494#13205494

APNumberPad very gratefully makes use of backspace icon from Typicons set by Stephen Hutchings (http://typicons.com/), under Creative Commons (Attribution-Share Alike 3.0 Unported) license.

Installation via CocoaPods

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

pod "APNumberPad"

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 APNumberPad into your Xcode project using Carthage, specify it in your Cartfile:

github "podkovyrin/APNumberPad"

Author

Andrew Podkovyrin, [email protected]

License

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

About

Full clone of iOS number keyboard with customizable function button.

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Languages

  • Objective-C 94.1%
  • Ruby 3.3%
  • Swift 2.6%