触摸ID默认警报部分隐藏屏幕上的键盘

时间:2016-12-21 10:31:55

标签: ios objective-c uialertview uikeyboard touch-id

在使用触摸ID验证用户时,弹出窗口将显示在窗口中,但键盘视图已从窗口部分消失(附件视图不会被键盘解除)。我添加了一个截图供您参考

enter image description here

实际上,我们期望结果如one

enter image description here

我在下面调用了代码来从viewDidLoad函数验证用户身份。如果我们在身份验证状态之前单击文本字段。问题会发生。

LAContext *context = [[LAContext alloc] init];

context.localizedFallbackTitle = @"";

NSError *error = nil;
if ([context canEvaluatePolicy:LAPolicyDeviceOwnerAuthenticationWithBiometrics error:&error]) {

    // If pass coed set means this loop
    [context evaluatePolicy:LAPolicyDeviceOwnerAuthenticationWithBiometrics localizedReason:@“Login With your Touch ID” reply:^(BOOL success, NSError *error) {

      if (error) {
       dispatch_async(dispatch_get_main_queue(), ^{
        // show error message
       });

      return;
      }

     if (success) {
       // allow user to a/c section
     } else {
      // Will add wrong user message
     }

   }];

请帮助我们解决此问题。谢谢!

1 个答案:

答案 0 :(得分:0)

为防止这种情况发生,您应该在[self.view setUserInteractionEnabled:false];中使用viewDidLoad并再次使用触摸ID访问块

dispatch_async(dispatch_get_main_queue(), ^{ [self.view setUserInteractionEnabled:true]; });

您还需要监控设备是否支持触摸ID访问