Iphone NSOperation中显示的UIAlertView-查看控制器无响应

Iphone NSOperation中显示的UIAlertView-查看控制器无响应,iphone,ios,objective-c,nsoperation,Iphone,Ios,Objective C,Nsoperation,我有一个NSOperation子类,它执行一些繁重的计算。它还有一个委托 如果用户没有提供正确的输入,我将在main方法中验证它,并通过performSelectorOnMainThread创建并显示警报(从我的NSOperation子类),然后调用委托方法,如下所示: -(void) main{ [self performSelectorOnMainThread:@selector(showAnAlert)

我有一个
NSOperation
子类,它执行一些繁重的计算。它还有一个委托

如果用户没有提供正确的输入,我将在
main
方法中验证它,并通过
performSelectorOnMainThread
创建并显示警报(从我的
NSOperation
子类),然后调用委托方法,如下所示:

    -(void) main{
    [self performSelectorOnMainThread:@selector(showAnAlert)
                                       withObject:nil
                                    waitUntilDone:YES];
                [self cancel]; //I need to cancel the operation
                return; //don't want to finish main running.

    }

- (void) showAnAlert{
   //Create an alert here
   [alert show];
}

And in my VC I have this: 

- (void) aDelegateMethodFromMyOperation{
   [self.textField setEndEditing:YES];
}
现在的问题是,一旦我解除警报,我就不能在我的文本字段中输入任何文本。。。。它会在点击时显示键盘。。。但它不会接受我的输入。。。为什么呢

不妨试试:

[textField becomeFirstResponder];

由于您在
NSOperation
中切换多个UI元素,因此文本字段可能无法重新获得完全控制权。

谢谢,但我不希望文本字段此时成为响应者。好的。不过,为了以防万一,我建议测试这种方法,只是为了露齿而笑。这可能是您的错误源。刚刚尝试过,不幸的是结果相同:(如果我从操作队列中删除位[aler show];一切正常……:sAh发现了问题!我有两个嵌套的performSelectorOnMainThread!谢谢。