THPinViewController 1.2.6

THPinViewController 1.2.6

测试已测试
Lang语言 Obj-CObjective C
许可 MIT
Released最新版本2017年3月

Thomas Hess维护。




  • Thomas Heß

适用于 iPhone 和 iPad 的 iOS 7 风格 PIN 屏幕显示,可以用作用户需要验证时的模态显示,例如访问您的应用程序的特别受保护的部分。

特性

  • 具有 iPhone 竖屏和 iPad 竖屏和横屏布局
  • 支持可变 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

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 许可下提供。

协作

如果您有任何功能请求或错误更正,请随时帮助并提交拉取请求或创建新的问题。