美文网首页
Swift--实现指纹解锁

Swift--实现指纹解锁

作者: 今年我25 | 来源:发表于2016-06-17 17:39 被阅读875次

    最近为了熟悉swift,写了一个小demo,记录一下swift中遇到的坑和常用的问题

    项目结果在最后:

    1.搭建环境

    在storyboard中,创建3个btn,设置密码、验证密码、修改密码

    2.创建手势显示DrawController,使用xib,搭建界面

    2.1 创建2个lab,第一个lab显示,不同的type用;第二个lab,根据type提示内容.

    2.2 在视图中,添加一个空白View,之后显示手势视图,命名为DrawView

    2.3 在DrawController下面,创建忘记密码Btn,用作返回

    并在文件中,创建全局变量:

    3.返回到ViewController中,创建btn的点击事件,用tag标示,使用摸态视图

    注意: 在swift中,默认不会关联xib,需要开发人员手动设置

    用代码实现相关的内容:

    3.1 在viewController中的内容已经处理完成。

    4.回到DrawViewController中

    4.1添加两个全局变量

    //根据tag值进行不同加载

    var whTag =0

    var updateTag =0//修改用到

    4.2 在viewWillAppear中,根据tag实现lab的显示

    5.在自定义显示手势的DrawView中,需要创建内容来显示手势按钮,用代码实现,记住在DrawController.xib中绑定DrawView

    5.1 swift中默认是不会有值得,需要创建值

    var btnSelectArr:(NSMutableArray) = [] //保存获取到的按钮集合

    5.2 swift中必须要实现的方法,在这个里面才能调用函数等内容

    required init?(coder aDecoder:NSCoder) {

    super.init(coder: aDecoder)

    crateBtn()  } 

    5.3 创建手势btn,还是比较简单的

    改函数,需要放到上面调用.

    5.4 下面做手势的功能

    在做手势前,需要了解,触摸的三个步骤,touchesBegan,touchesMoved,touchesEnded,

    首先,我们要获取触摸点,得到触摸点之后,在通过CGPoint,获取到btn,所以要创建两个函数

    第一个:

    第二个:

    首先在触摸开始中:

    通过函数获取到btn,并判断有没有,在存到集合当中

    在触摸移动的过程中:

    同样通过函数获取到btn,判断btn 的选中状态和是否为空,存到集合中

    在触摸结束时:

    需要创建一个delegate,使用str把所选择的btn,拼接到str中,所以参数为,当前对象,和路径path,最后会在DrawController中调用

    6.处理好手势后,我们就需要把手势给绘制出来

    创建一个函数处理btn状态

    7.回到DrawViewController,添加DrawView的代理协议,跟OC不同的是,swift添加代理后,必须实现函数,不然会报错

    在UIViewControllerh后,添加代理drawViewDelegate

    在下面实现代理函数

    最后实现了:手势截屏的功能

    到此,大部分代码就是这样,最后演示一下效果:

    相关文章

      网友评论

          本文标题:Swift--实现指纹解锁

          本文链接:https://www.haomeiwen.com/subject/bydvdttx.html