方式1. 使用当双击输入的时候弹出键盘同时,使用手势和通知监听键盘的方法实现
代码如下:
1. 监听键盘通知
[[NSNotificationCenter defaultCenter] addObserver:self selector:@selector(addTap) name:UIKeyboardDidShowNotification object:nil];
[[NSNotificationCenter defaultCenter] addObserver:self selector:@selector(keyDismiss) name:UIKeyboardWillHideNotification object:nil];
2. 弹出键盘中添加方法
- (void)addTap {
_tap = [[UITapGestureRecognizer alloc] initWithTarget:self action:@selector(resign)];
[self.view addGestureRecognizer:_tap];//self.view 可以视情况改动
}
3. 手势的事件
#pragma mark - 点击手势的事件方法
- (void)resign {
[self.view endEditing:YES];
}
4. 键盘消失的方法
- (void)keyDismiss {
[self.view removeGestureRecognizer:_tap];
}
方式2: 使用textView 的代理方法
#pragma mark - textView 的代理方法
- (BOOL)textView:(UITextView *)textView shouldChangeTextInRange:(NSRange)range replacementText:(NSString *)text {
if ([text isEqualToString:@"\n"]) {
[textView resignFirstResponder];
return NO;
}
return YES;
}