PickerButton 0.1.4

PickerButton 0.1.4

Maintained by Taiki Suzuki.



PickerButton

Platform Language Version Carthage compatible License

PickerButton is subclass of UIButton that presents UIPickerView in keyboard.

Concept

When PickerButton is tapped, it presents UIPickerView on UIKeyboard.

PickerButton inputView inputAccessoryView
PickerButton is in conformity to UIKeyInput. PickerButton returns UIPickerView as inputView. PickerButton returns UIToolBar as inputAccessoryView.

When selected row or component is changed, button title is automatically updated.

Usage

PickerButton is almost same interface as UIPickerView.

class ViewController: UIViewController {

    @IBOutlet weak var button: PickerButton!

    let pickerValues: [String] = ["first", "second", "third"]

    override func viewDidLoad() {
        super.viewDidLoad()

        button.delegate = self
        button.dataSource = self
    }
}

extension ViewController: UIPickerViewDelegate, UIPickerViewDataSource {

    func pickerView(_ pickerView: UIPickerView, titleForRow row: Int, forComponent component: Int) -> String? {
        return pickerValues[row]
    }

    func numberOfComponents(in pickerView: UIPickerView) -> Int {
        return 1
    }

    func pickerView(_ pickerView: UIPickerView, numberOfRowsInComponent component: Int) -> Int {
        return pickerValues.count
    }
}

To use PickerButton in Storyboard / Xib, set Custom Class to PickerButton.

Requirements

  • Swift 4.2
  • Xcode 10.1 or greater
  • iOS 10.0 or greater

Installation

CocoaPods

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

pod "PickerButton"

Carthage

If you’re using Carthage, simply add PickerButton to your Cartfile:

github "marty-suzuki/PickerButton"

Make sure to add PickerButton.framework to "Linked Frameworks and Libraries" and "copy-frameworks" Build Phases.

Author

marty-suzuki, [email protected]

License

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