ios键盘弹出后如何关闭,主要通过 resignFirstResponder函数 ,从API中可以看到该方法属于UIResonder类方法
[UIResponder resignFirstResponder]
理论上所有继承自nsobject的控件都能调用此函数
常用的的在textview, textfield控件。
常用的场景是在文字输入完毕点击return键或者屏幕空白处退出键盘。
1、return键盘退出
//textview回车时键盘退出
-(BOOL)textView:(UITextView *)textView shouldChangeTextInRange:(NSRange)range replacementText:(NSString *)text{
if([text isEqualToString:@"\n"]){
[textView resignFirstResponder];
return NO;
}else
return YES;
}
-(BOOL)textFieldShouldReturn:(UITextField *)textField{
[textField resignFirstResponder];
return YES;
}
2、点击屏幕空白处退出键盘
思路很简单
背景由uiview改为uicontrol,这样可以为uicontrol控件创见事件关联:touch Down ,再关联方法
-(IBAction)bactap:(id)sender{
[self.textfield resignFirstResponder];
[self.textview resignFirstResponder];
}
[UIResponder resignFirstResponder]
理论上所有继承自nsobject的控件都能调用此函数
常用的的在textview, textfield控件。
常用的场景是在文字输入完毕点击return键或者屏幕空白处退出键盘。
1、return键盘退出
//textview回车时键盘退出
-(BOOL)textView:(UITextView *)textView shouldChangeTextInRange:(NSRange)range replacementText:(NSString *)text{
if([text isEqualToString:@"\n"]){
[textView resignFirstResponder];
return NO;
}else
return YES;
}
-(BOOL)textFieldShouldReturn:(UITextField *)textField{
[textField resignFirstResponder];
return YES;
}
2、点击屏幕空白处退出键盘
思路很简单
背景由uiview改为uicontrol,这样可以为uicontrol控件创见事件关联:touch Down ,再关联方法
-(IBAction)bactap:(id)sender{
[self.textfield resignFirstResponder];
[self.textview resignFirstResponder];
}