我在 iOS5/5.1 中测试我的应用程序时遇到了一些问题。我按下按钮的 IBAction 根本没有被调用。我在某处读到这可能是因为手势识别器。我有这段代码,当用户点击屏幕上的任何地方时,它会关闭键盘,我认为这可能是罪魁祸首。我在另一个屏幕上也有类似的代码,但我什至无法访问它以查看它是否存在类似的错误。
UITapGestureRecognizer *tapRecognizer = [[UITapGestureRecognizer alloc] initWithTarget:self action:@selector(handleSingleTap:)];
[tapRecognizer setDelegate:(id)self];
[tapRecognizer setNumberOfTapsRequired:1];
[self.view addGestureRecognizer:tapRecognizer];
这是函数。
- (void)handleSingleTap:(UITapGestureRecognizer *)recognizer
{
[self.searchBar resignFirstResponder];
}
如何在不失去通过点击关闭键盘的能力的情况下防止这种故障的发生?
问候, 迈克。
最佳答案
手势识别器是否识别出点击并因此没有将其传递给按钮,按钮是手势识别器所附加的 View 的 subview ?您可以在调用 handleSingleTap
后尝试删除手势识别器。
关于iphone - Xcode 4.5.1 iOS5/5.1 IBAction 不工作。在 iOS6 中很好,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13654534/