88
99import UIKit
1010
11- //public protocol KWVerificationCodeDelegate: class {
12- // func getVerificationCode() -> String
13- // func validateCode() -> Bool
14- //}
15-
1611@IBDesignable open class KWVerificationCodeView : UIView {
1712
1813 // MARK: - Constants
1914 static let maxCharactersLength = 1
2015
2116 // MARK: - IBInspectables
22- //@IBInspectable open var underlineColor: UIColor = UIColor.darkGray {
23- // didSet {
24- // underlineView.backgroundColor = self.underlineColor.withAlphaComponent(0.3)
25- // }
26- //}
17+ @IBInspectable open var underlineColor : UIColor = UIColor . darkGray {
18+ didSet {
19+ for textFieldView in textFieldViews {
20+ textFieldView. underlineColor = self . underlineColor
21+ }
22+ }
23+ }
24+ @IBInspectable var underlineSelectedColor : UIColor = UIColor . blue {
25+ didSet {
26+ for textFieldView in textFieldViews {
27+ textFieldView. underlineSelectedColor = self . underlineSelectedColor
28+ }
29+ }
30+ }
2731
2832 // MARK: - IBOutlets
29- @IBOutlet weak var textFieldView1 : KWTextFieldView !
30- @IBOutlet weak var textFieldView2 : KWTextFieldView !
31- @IBOutlet weak var textFieldView3 : KWTextFieldView !
32- @IBOutlet weak var textFieldView4 : KWTextFieldView !
33+ @IBOutlet weak private var textFieldView1 : KWTextFieldView !
34+ @IBOutlet weak private var textFieldView2 : KWTextFieldView !
35+ @IBOutlet weak private var textFieldView3 : KWTextFieldView !
36+ @IBOutlet weak private var textFieldView4 : KWTextFieldView !
3337
3438 // MARK: - Variables
35- var mobile : String !
36- var selectedVerificationCodeViewIndex = 0
37-
3839 lazy var textFieldViews : [ KWTextFieldView ] = {
3940 [ unowned self] in
4041
4142 return [ self . textFieldView1, self . textFieldView2, self . textFieldView3, self . textFieldView4]
4243 } ( )
43-
44- //weak public var delegate: KWVerificationCodeDelegate?
4544
4645 // MARK: - Lifecycle
4746 override init ( frame: CGRect ) {
4847 super. init ( frame: frame)
4948
5049 loadViewFromNib ( )
5150 }
52-
51+
5352 required public init ? ( coder aDecoder: NSCoder ) {
5453 super. init ( coder: aDecoder)
5554
5655 loadViewFromNib ( )
5756 setupVerificationCodeViews ( )
58- //numberTextField.delegate = self
59- //NotificationCenter.default.addObserver(self, selector: #selector(textFieldDidChange(_:)), name: NSNotification.Name.UITextFieldTextDidChange, object: numberTextField)
60- }
61-
62- deinit {
63- //NotificationCenter.default.removeObserver(self)
6457 }
6558
6659 // MARK: - Public Methods
@@ -73,7 +66,7 @@ import UIKit
7366 return verificationCode
7467 }
7568
76- public func validateCode ( ) -> Bool {
69+ public func hasValidCode ( ) -> Bool {
7770 for textFieldView in textFieldViews {
7871 if Int ( textFieldView. numberTextField. text!) == nil {
7972 return false
@@ -82,7 +75,7 @@ import UIKit
8275
8376 return true
8477 }
85-
78+
8679 // MARK: - Private Methods
8780 private func setupVerificationCodeViews( ) {
8881 for textFieldView in textFieldViews {
0 commit comments