• iOS图案锁,支持动画、图片、绘图


    最近忙着搭建一个聊天用的框架,过几天应该会整理写出来吧,原理不难,但是实现后会省很多事。好久没写博客,周末心血来潮写了个图案锁,这东西没什么技术含量,网上一堆,这次这个图案锁顺便联系了怎么打包使用.a .bundle

    注:支持动画、图片做触摸点,另外,打包成.a的资源包含了图片,比较大,想自定义的童鞋,可以使用未打包的,然后自己定义资源,使用颜色的,会按照默认样式绘图,不好意思,现在不支持改变样式,只能改变颜色,不过图片可以弥补这个缺陷。

    先上超链接: 

        普通版:PLView.zip

       .a含资源版:PatternLockView.a.zip

    使用方法里面有;

    下面简单的介绍下

     1 #import "ViewController.h"
     2 #import "PatternLockView.h"//头文件
     3 
     4 @interface ViewController () <PatternlockViewDelegate>//协议
     5 @property (nonatomic,strong) PatternLockView * pv; //view
     6 @end
     7 
     8 @implementation ViewController
     9 
    10 - (void)viewDidLoad {
    11     [super viewDidLoad];
    12     // Do any additional setup after loading the view, typically from a nib.
    13     _pv = [[PatternLockView alloc]initWithFrame:self.view.frame];//建议采用initWithFrame初始化
    14     
    15     [_pv setFillWay:PLFillWayAnimation andFillArray:nil];//设置填充方式,资源填nil则需要引入我之前制作的图片资源
    16     
    17     [_pv setPointsSize:CGSizeMake(3, 3)];//设置点的个数,这里是3*3
    18     
    19     [_pv setPointRadius:50];//设置点的半径
    20     
    21     _pv.delegate = self;
    22     
    23     [_pv startDraw];//一定要完成设置再调用该方法,
    24     
    25     [self.view addSubview:_pv];
    26 //    [_pv clearDraw]  //恢复默认样式。
    27 }
    28 //协议方法
    29 - (void)PatternlockView:(PatternLockView*)patternlockView didTouchPointAtIndex:(NSInteger)index andCountOfTouchPoint:(NSInteger)count
    30 {
    31     NSLog(@"当前选择的是:%ld ,当前供选择了%ld个点。",(long)index,(long)count);
    32 }
    33 //协议方法
    34 - (void)PatternlockView:(PatternLockView*)patternlockView didEndTouchMoveWithIndexs:(NSArray<NSNumber*>*)indexs
    35 {
    36     NSLog(@"共选择%@",indexs);
    37 }
    38 //协议方法
    39 - (void)PatternlockView:(PatternLockView*)patternlockView didEndTouchMoveWithString:(NSString*)string
    40 {
    41     NSLog(@"选择结束的字符串是:%@",string);
    42     
    43     NSLog(@"将样式设置成成功样式!");
    44     [_pv setStyleTo:PatternLockStyleSuccess];
    45 }

    使用不是很麻烦,但是记得在  startDraw 之前完成相关设置,设置都有默认值。

    差几张截图:

  • 相关阅读:
    安卓 广播机制
    安卓 活动的启动模式
    安卓 生命周期
    安卓六大布局
    day4-list,列表
    Leetcode 947 移除最多的同行或同列石头
    Leetcode 628三个数的最大乘积
    Leetcode 1584连接所有点的最小费用
    Leetcode 721 账户合并
    Leetcode 103 二叉树的锯齿层序遍历
  • 原文地址:https://www.cnblogs.com/kongkaikai/p/5435247.html
Copyright © 2020-2023  润新知