密码输入页面的实现-模仿支付宝
涉及知识点总结:
- swift类的继承
- swift中权限控制
- swift中的懒加载
- swift中类的扩展
- swift中的闭包(类似oc中的block)
首先大家看看效果
实现思路
使用一个隐藏的UITextField
获取键盘输入的内容,根据text渲染圆形的点。
使用方法
1.简单使用
默认的密码数量是6个,颜色为grayColor
let v = SetPassWordView(frame: CGRect(x: 10, y: 100, width: 200, height: 40))
//完成输入的回调
v.doneAction = {(text) -> () in
print(text)
//to do something
}
self.view.addSubview(v)
2.设置UI样式
let v = SetPassWordView(frame: CGRect(x: 10, y: 100, width: 200, height: 40))
//设置密码数量
v.count = 4
//设置线条颜色
v.lineColor = UIColor.blueColor()
//设置密码点颜色
v.dotColor = UIColor.redColor()
//设置半径大小
v.dotRadius = 20
//完成输入的回调
v.doneAction = {(text) -> () in
print(text)
//to do something
}
self.view.addSubview(v)
具体代码大家可以到github上看,我写了很详细的注释【传送门】