触摸主队列上的ID

时间:2014-10-09 10:20:58

标签: ios objective-c ios8 touch-id

在iOS 8中使用Touch ID进行身份验证时,从身份验证到我的应用程序的过程会从身份验证VC转到已登录的VC。我用成功验证的直接方法调用替换了第一个获得主队列的方法,现在它超级快。这在某种程度上与Touch ID在非主队列上做了一些工作有关,但我找不到任何关于此的文档或指南。是否应在主队列上执行所有与Touch ID相关的代码,或仅执行身份验证的结果?

1 个答案:

答案 0 :(得分:2)

查看Apple example code,您应该确保在主队列的reply块中执行UI更新,因为它可能正在执行异步块。

以下是用于处理该示例项目中的结果的方法 -

- (void)printResult:(UITextView*)textView message:(NSString*)msg
{
    dispatch_async(dispatch_get_main_queue(), ^{
        // update the result in the main queue because we may be calling from asynchronous block
        textView.text = [textView.text stringByAppendingString:[NSString stringWithFormat:@"%@\n",msg]];
        [textView scrollRangeToVisible:NSMakeRange([textView.text length], 0)];
    });
}