两个UITextField具有相同的隐藏方法

时间:2014-02-18 23:08:40

标签: ios objective-c uitextfield

您好我正试图在用户点击键盘时隐藏两个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];
}

1 个答案:

答案 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];
}