• Stars
    star
    95
  • Rank 341,804 (Top 7 %)
  • Language
    Swift
  • License
    MIT License
  • Created about 5 years ago
  • Updated over 3 years ago

Reviews

There are no reviews yet. Be the first to send feedback to the community and the maintainers!

Repository Details

VKPinCodeView is simple and elegant UI component for input PIN. You can easily customise appearance and get auto fill (OTP) iOS 12 feature right from the box.

Build Status (Swift Version) CocoaPods Compatible Carthage Compatible Swift Package Manager

Features

  • Variable PIN length
  • Underline, border and custom styles
  • The error status with / without shake animation
  • Resetting the error status manually, by user interaction or automatically with a custom delay
  • Highlighting the selected entry with / without animation
  • Text input callbacks (begin editing, change code, complete)
  • Text input validation
  • LTR/RTL support

Preview

Installation

CocoaPods

CocoaPods is a dependency manager for Cocoa projects. For usage and installation instructions, visit their website. To integrate VKPinCodeView into your Xcode project using CocoaPods, specify it in your Podfile:

pod 'VKPinCodeView'

Carthage

Carthage is a decentralized dependency manager that builds your dependencies and provides you with binary frameworks. To integrate VKPinCodeView into your Xcode project using Carthage, specify it in your Cartfile:

github "Sunspension/VKPinCodeView"

Manually

Just copy and paste Source folder into your project.

Minimal Setup

override func viewDidLoad() {
   super.viewDidLoad()
        
   let pinView = VKPinCodeView()
   pinView.translatesAutoresizingMaskIntoConstraints = false
   view.addSubview(pinView)
   pinView.leadingAnchor.constraint(equalTo: view.leadingAnchor, constant: 40).isActive = true
   pinView.trailingAnchor.constraint(equalTo: view.trailingAnchor, constant: -40).isActive = true
   pinView.centerYAnchor.constraint(equalTo: view.centerYAnchor).isActive = true
   pinView.heightAnchor.constraint(equalToConstant: 50).isActive = true
   pinView.onSettingStyle = { UnderlineStyle() }
   pinView.becomeFirstResponder()
}

Contribute

VKPinCodeView is open to contribute, see contribution notes.

  • If you want to contribute, submit a pull request
  • If you found a bug, open an issue.
  • If you need help with a feature or need to disscuss something else please contact me [email protected]

Requirements

  • iOS 9.0+
  • Xcode 10.2+
  • Swift 5.0

Author

Made with ❀️ by Vladimir Kokhanevich

License

VKPinCodeView is released under the MIT license. See LICENSE for details.

More Repositories