您好我正试图在用户点击键盘时隐藏两个UITextFields的键盘。我需要两个文本字段都有相同的方法。如何在不重复它们并给出Xcode和错误的情况下执行此操作? 谢谢!
这是我用于我的第一个文本字段的方法,我需要为我的另一个。
- (void)touchesBegan:(NSSet *)touches withEvent:(UIEvent *)event {
UITouch *touch = [[event allTouches] anyObject];
if ([text1 isFirstResponder] && [touch view] != text1) {
[text1 resignFirstResponder];
}
[super touchesBegan:touches withEvent:event];
}
答案 0 :(得分:0)
Apple强烈建议使用手势识别器,而不是touchesBegan和其他“触摸”方法,如果你真的不必使用它们。
试试这段代码。它适用于视图控制器内的任意数量的文本视图。
- (void)viewDidLoad
{
[super viewDidLoad];
UIGestureRecognizer *tapRecognizer = [[UITapGestureRecognizer alloc] initWithTarget:self action:@selector(onBackgroundTapped)];
[self.view addGestureRecognizer:tapRecognizer];
... another initialization code
}
- (void)onBackgroundTapped
{
[self.view endEditing:YES];
}