{"id":13849058,"url":"https://github.com/iosdeveloperpanc/PCGestureUnlock","last_synced_at":"2025-07-12T15:32:56.597Z","repository":{"id":33560031,"uuid":"37206276","full_name":"iosdeveloperpanc/PCGestureUnlock","owner":"iosdeveloperpanc","description":"目前最全面最高仿支付宝的手势解锁，而且提供方法进行参数修改，能解决项目开发中所有手势解锁的开发","archived":false,"fork":false,"pushed_at":"2017-06-21T04:32:10.000Z","size":10225,"stargazers_count":691,"open_issues_count":4,"forks_count":162,"subscribers_count":22,"default_branch":"master","last_synced_at":"2024-11-22T01:32:36.196Z","etag":null,"topics":["gesture"],"latest_commit_sha":null,"homepage":null,"language":"Objective-C","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/iosdeveloperpanc.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":null,"code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null}},"created_at":"2015-06-10T15:40:55.000Z","updated_at":"2024-10-08T07:54:48.000Z","dependencies_parsed_at":"2022-09-24T06:01:42.700Z","dependency_job_id":null,"html_url":"https://github.com/iosdeveloperpanc/PCGestureUnlock","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/iosdeveloperpanc/PCGestureUnlock","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/iosdeveloperpanc%2FPCGestureUnlock","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/iosdeveloperpanc%2FPCGestureUnlock/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/iosdeveloperpanc%2FPCGestureUnlock/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/iosdeveloperpanc%2FPCGestureUnlock/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/iosdeveloperpanc","download_url":"https://codeload.github.com/iosdeveloperpanc/PCGestureUnlock/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/iosdeveloperpanc%2FPCGestureUnlock/sbom","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":265013544,"owners_count":23698061,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["gesture"],"created_at":"2024-08-04T19:01:06.839Z","updated_at":"2025-07-12T15:32:53.524Z","avatar_url":"https://github.com/iosdeveloperpanc.png","language":"Objective-C","funding_links":[],"categories":["Objective-C"],"sub_categories":[],"readme":"# PCGestureUnlock\n\n目前最全面最高仿支付宝的手势解锁，而且提供方法进行参数修改，能解决项目开发中所有手势解锁的开发\n------------------\n宣言：不仅仅是支付宝手势解锁，它很好很强大~\n\n框架基础：全面实现支付宝手势解锁，包括各种细节！！！（具体见gif图片）\n\n框架目标：打造主流手势解锁终结者，简单易用，高度解耦！\n\n框架特点：面向实际项目开发，修改参数(PCCircleViewConst.h文件中)即可实现实际需求\n\n设置密码：\n\n![ABC](https://github.com/iosdeveloperpanc/PCGestureUnlock/blob/master/PCGestureUnlock/settingGesture.gif) \n\n细节处理之全方向箭头\n\n![ABC](https://github.com/iosdeveloperpanc/PCGestureUnlock/blob/master/PCGestureUnlock/arrowDirctions.gif) \n\n细节处理之错误绘制\n\n![ABC](https://github.com/iosdeveloperpanc/PCGestureUnlock/blob/master/PCGestureUnlock/ErrorDisplay.gif) \n\n细节处理之跳跃连线\n\n![ABC](https://github.com/iosdeveloperpanc/PCGestureUnlock/blob/master/PCGestureUnlock/JumpConnect.gif) \n\n框架使用说明：\n使用前说明：\n解锁界面（PCCircleView）可以实例化出特定使用的类型界面，实现以下方法即可\n// 初始化方法（设置view的相关类型、参数）\n    - (instancetype)initWithType:(CircleViewType)type clip:(BOOL)clip arrow:(BOOL)arrow;\nclip代表圆内是否剪切 arrow代表是否有三角箭头\n\n1.包含框架文件：（FrameWork）\n2.在使用到的控制器中实现以下方法：\n      - (void)viewDidLoad {\n      [super viewDidLoad];\n      // Do any additional setup after loading the view.\n \n     // 解锁界面  默认clip:YES, arrow:YES\n     PCCircleView *lockView = [[PCCircleView alloc] init];  \n      lockView.delegate = self;\n      self.lockView = lockView;\n      [self.view addSubview:lockView];\n     }\n\n      #pragma - mark - circleView - delegate\n      #pragma mark - circleView - delegate - setting\n      - (void)circleView:(PCCircleView *)view type:(CircleViewType)type connectCirclesLessThanNeedWithGesture:(NSString *)gesture\n    {\n     NSString *gestureOne = [PCCircleViewConst getGestureWithKey:gestureOneSaveKey];\n\n      // 看是否存在第一个密码\n     if ([gestureOne length]) {\n         NSLog(@\"提示再次绘制之前绘制的第一个手势密码\");\n     } else {\n         NSLog(@\"密码长度不合法%@\", gesture);\n     }\n     }\n\n      - (void)circleView:(PCCircleView *)view type:(CircleViewType)type didCompleteSetFirstGesture:(NSString *)gesture\n    {\n       NSLog(@\"获得第一个手势密码%@\", gesture);\n       // infoView展示对应选中的圆\n    }\n\n    - (void)circleView:(PCCircleView *)view type:(CircleViewType)type didCompleteSetSecondGesture:(NSString *)gesture result:(BOOL)equal\n    {\n     NSLog(@\"获得第二个手势密码%@\",gesture)；\n     if (equal) {\n         NSLog(@\"两次手势匹配！可以进行本地化保存了\");\n      \n     } else {\n         NSLog(@\"两次手势不匹配！\");\n     }\n      }\n\n    #pragma mark - circleView - delegate - login or verify gesture\n      - (void)circleView:(PCCircleView *)view type:(CircleViewType)type didCompleteLoginGesture:(NSString *)gesture result:(BOOL)equal\n    {\n        // 此时的type有两种情况 Login or verify\n        if (type == CircleViewTypeLogin) {\n           if (equal) {\n             NSLog(@\"登陆成功！\");\n           } else {\n            NSLog(@\"密码错误！\");\n           }\n     } else if (type == CircleViewTypeVerify) {\n         \n           if (equal) {\n               NSLog(@\"验证成功，跳转到设置手势界面\");\n               \n           } else {\n             NSLog(@\"原手势密码输入错误！\");\n               \n        }\n        }\n    }\n\n\n#PCGestureUnlock 手势解锁终结者\n------------\n\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fiosdeveloperpanc%2FPCGestureUnlock","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fiosdeveloperpanc%2FPCGestureUnlock","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fiosdeveloperpanc%2FPCGestureUnlock/lists"}