适用于 iPhone 和 iPad 的 iOS 7 风格 PIN 屏幕显示,可以用作用户需要验证时的模态显示,例如访问您的应用程序的特别受保护的部分。
THPinViewController *pinViewController = [[THPinViewController alloc] initWithDelegate:self];
pinViewController.promptTitle = @"Enter PIN";
pinViewController.promptColor = [UIColor darkTextColor];
pinViewController.view.tintColor = [UIColor darkTextColor];
pinViewController.hideLetters = YES;
// for a solid color background, use this:
pinViewController.backgroundColor = [UIColor whiteColor];
// for a translucent background, use this:
self.view.tag = THPinViewControllerContentViewTag;
self.modalPresentationStyle = UIModalPresentationCurrentContext;
pinViewController.translucentBackground = YES;
[self presentViewController:pinViewController animated:YES completion:nil];
// mandatory delegate methods
- (NSUInteger)pinLengthForPinViewController:(THPinViewController *)pinViewController
{
return 4;
}
- (BOOL)pinViewController:(THPinViewController *)pinViewController isPinValid:(NSString *)pin
{
if ([pin isEqualToString:self.correctPin]) {
return YES;
} else {
self.remainingPinEntries--;
return NO;
}
}
- (BOOL)userCanRetryInPinViewController:(THPinViewController *)pinViewController
{
return (self.remainingPinEntries > 0);
}
// optional delegate methods
- (void)incorrectPinEnteredInPinViewController:(THPinViewController *)pinViewController {}
- (void)pinViewControllerWillDismissAfterPinEntryWasSuccessful:(THPinViewController *)pinViewController {}
- (void)pinViewControllerDidDismissAfterPinEntryWasSuccessful:(THPinViewController *)pinViewController {}
- (void)pinViewControllerWillDismissAfterPinEntryWasUnsuccessful:(THPinViewController *)pinViewController {}
- (void)pinViewControllerDidDismissAfterPinEntryWasUnsuccessful:(THPinViewController *)pinViewController {}
- (void)pinViewControllerWillDismissAfterPinEntryWasCancelled:(THPinViewController *)pinViewController {}
- (void)pinViewControllerDidDismissAfterPinEntryWasCancelled:(THPinViewController *)pinViewController {}
请参阅示例项目以获取更多详细信息。
git submodule add git://github.com/antiraum/THPinViewController.git <local path>
git submodule update
THPinViewController 需要 iOS 7.0 及以上版本。
THPinViewController 使用 ARC。如果您在非 ARC 项目的 THPinViewController 中使用,您需要为 THPinViewController 源文件设置编译器标志 -fobjc-arc
。
在 MIT 许可下提供。
如果您有任何功能请求或错误更正,请随时帮助并提交拉取请求或创建新的问题。