Skip to content

efremidze/NumPad

Repository files navigation

NumPad

Language Version CI Status codebeat badge Carthage compatible

Number Pad inspired by Square. This module is based on LEAmountInputView.

Demo

$ pod try NumPad 

Requirements

  • iOS 9.0+
  • Xcode 9.0+
  • Swift 4 (NumPad 3.x), Swift 3 (NumPad 2.x), Swift 2.3 (NumPad 1.x)

Installation

CocoaPods

To install with CocoaPods, simply add this in your Podfile:

use_frameworks! pod "NumPad"

Carthage

To install with Carthage, simply add this in your Cartfile:

github "efremidze/NumPad"

Manually

  1. Download and drop NumPad.swift in your project.
  2. Congratulations!

Usage

Add NumPad to your view.

import NumPad let numPad = NumPad(frame: CGRect(x: 0, y: 0, width: 320, height: 600)) numPad.dataSource = self numPad.delegate = self addSubview(numPad)

Use the DefaultNumPad for a preconfigured dataSource and delegate.

Data Source

// number of rows func numberOfRowsInNumPad(numPad: NumPad) -> Int // number of columns for row func numPad(numPad: NumPad, numberOfColumnsInRow row: Row) -> Int // item for position func numPad(numPad: NumPad, itemAtPosition position: Position) -> Item

Delegate

// handle item tap func numPad(numPad: NumPad, itemTapped item: Item, atPosition position: Position) // item size for position func numPad(numPad: NumPad, sizeForItemAtPosition position: Position) -> CGSize

Contributions

Contributions are totally welcome.

License

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

Packages

 
 
 

Contributors