THPinViewControllerというライブラリを使ってパスコードロック画面を簡単に実装してみようと思います。
インストールはCocoaPodsを使います。
pod 'THPinViewController'
Objective-cのライブラリなのでBridging Headerでimportします。
#import "THPinViewController.h"
使い方は以下の通りです。
THPinViewControllerがパスコード画面なので、それを表示するだけです。
必須のdelegateは以下の3つで、パスコードの長さ・パスコードが合ってるかどうか・ユーザーのリトライを許可するかを制御できます。
class ViewController: UIViewController { override func viewDidAppear(animated: Bool) { let vc = THPinViewController(delegate: self) presentViewController(vc, animated: true, completion: nil) } } extension ViewController: THPinViewControllerDelegate { func pinLengthForPinViewController(pinViewController: THPinViewController!) -> UInt { return 4 } func pinViewController(pinViewController: THPinViewController!, isPinValid pin: String!) -> Bool { return true } func userCanRetryInPinViewController(pinViewController: THPinViewController!) -> Bool { return true } }
タイトルや背景色なども変える事ができます。
let vc = THPinViewController(delegate: self) vc.promptColor = UIColor.whiteColor() vc.promptTitle = "パスコードを入力して下さい" vc.backgroundColor = UIColor.lightGrayColor()
数字をボタンはviewのtintColorを変更する事で変えれます。
vc.view.tintColor = UIColor.brownColor()