- 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
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 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"
Just copy and paste Source folder into your project.
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()
}
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]
- iOS 9.0+
- Xcode 10.2+
- Swift 5.0
Made with ❤️ by Vladimir Kokhanevich
VKPinCodeView is released under the MIT license. See LICENSE for details.