{"id":18271595,"url":"https://github.com/guicocoa/pinview","last_synced_at":"2025-04-05T02:30:34.863Z","repository":{"id":1040315,"uuid":"870222","full_name":"guicocoa/pinview","owner":"guicocoa","description":"PIN Code Entry Screen for iOS","archived":true,"fork":false,"pushed_at":"2012-12-24T20:13:07.000Z","size":849,"stargazers_count":188,"open_issues_count":2,"forks_count":37,"subscribers_count":10,"default_branch":"master","last_synced_at":"2025-03-17T10:06:30.834Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":"","language":"Objective-C","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/guicocoa.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null}},"created_at":"2010-08-29T15:26:06.000Z","updated_at":"2024-01-02T22:19:41.000Z","dependencies_parsed_at":"2022-07-15T06:30:53.396Z","dependency_job_id":null,"html_url":"https://github.com/guicocoa/pinview","commit_stats":null,"previous_names":[],"tags_count":2,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/guicocoa%2Fpinview","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/guicocoa%2Fpinview/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/guicocoa%2Fpinview/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/guicocoa%2Fpinview/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/guicocoa","download_url":"https://codeload.github.com/guicocoa/pinview/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":247279215,"owners_count":20912848,"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":[],"created_at":"2024-11-05T11:39:23.847Z","updated_at":"2025-04-05T02:30:34.554Z","avatar_url":"https://github.com/guicocoa.png","language":"Objective-C","funding_links":[],"categories":["etc"],"sub_categories":[],"readme":"# Passcode view\n\n## Notice\n\nI will not maintain this library any longer. Instead, I would suggest you look at [this one](https://github.com/project-imas/app-password) \u0026mdash; also written by me \u0026mdash; that is much more modern, flexible, and easily integrated into apps. It departs a bit from the system passcode view so that it can be highly customized.\n\n## About\n\nThis project gives you a passcode control that can be dropped into any iOS app. It behaves exactly like the passcode screens that can be seen by going to Settings \u003e General \u003e Passcode Lock.\n\n## Features\n\n- Native iOS look and feel\n- Masks pin entry with bullet characters\n- Provide your own theme by using a custom nib file\n- Provide custom text to be displayed on the passcode entry view\n- Block-based passcode verification\n\n## Installation\n\n- Drag the \"pinview\" folder to your Xcode project (make sure \"copy files\", \"create groups\", and the appropriate target are selected)\n- Add the AudioToolbox framework to your target\n\n# Examples\n\nHere are some quick examples. To see them in use, open the \"SampleApp\" Xcode project.\n\n## Create a new passcode\n\n````objc\nGCPINViewController *PIN = [[GCPINViewController alloc]\n                            initWithNibName:nil\n                            bundle:nil\n                            mode:GCPINViewControllerModeCreate];\nPIN.messageText = @\"Create Passcode\";\nPIN.errorText = @\"The passcodes do not match\";\nPIN.verifyBlock = ^(NSString *code) {\n    NSLog(@\"setting code: %@\", code);\n    return YES;\n};\n[PIN presentFromViewController:self animated:YES];\n[PIN release];\n````\n\n## Verify a passcode\n\n````objc\nGCPINViewController *PIN = [[GCPINViewController alloc]\n                            initWithNibName:nil\n                            bundle:nil\n                            mode:GCPINViewControllerModeVerify];\nPIN.messageText = @\"Check Passcode\";\nPIN.errorText = @\"Incorrect passcode\";\nPIN.verifyBlock = ^(NSString *code) {\n    NSLog(@\"checking code: %@\", code);\n    return [code isEqualToString:@\"0187\"];\n};\n[PIN presentFromViewController:self animated:YES];\n[PIN release];\n````\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fguicocoa%2Fpinview","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fguicocoa%2Fpinview","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fguicocoa%2Fpinview/lists"}