當(dāng)我們?cè)诳奢斎胄畔⒌目丶辖Y(jié)束輸入時(shí)绍昂,可隱藏鍵盤以下兩句代碼:
1 [self.onetf resignFirstResponder]; 某一個(gè)可輸入控件放棄第一響應(yīng)者
2 [self.view endEditing:YES]; 當(dāng)前頁面上所有可輸入控件停止編輯
用以下幾個(gè)方法來隱藏鍵盤1 借助當(dāng)前輸入框的父View(或者父View的父View)
1)父view為繼承自UIResponder的對(duì)象
可以直接調(diào)用touch方法來隱藏鍵盤
-(void)touchesEnded:(NSSet*)touches withEvent:(UIEvent *)event {
[self.onetf resignFirstResponder];
}
2)在父view上添加點(diǎn)擊事件
UITapGestureRecognizer *tap = [[UITapGestureRecognizer alloc]initWithTarget:self action:@selector(dismissKeyboard:)];
[self.fristView addGestureRecognizer:tap];
- (void)dismissKeyboard:(id)sender{
[self.onetf resignFirstResponder];
}
3)將父view所繼承的類改為UIControl,使用UIControl 的 Touch Up Inside 事件來收起鍵盤
- (IBAction)dismissKeyboard:(id)sender {
[self.onetf resignFirstResponder];
}
2 點(diǎn)擊鍵盤上的Return鍵 收起鍵盤
- (BOOL)textFieldShouldReturn:(UITextField *)textField {
[self.onetf resignFirstResponder];
return YES;
}
3 繼承于UIScrollView的控件可以在滑動(dòng)是收起鍵盤
1 )首先遵守UIScrollViewDelegate協(xié)議,滾動(dòng)結(jié)束后收起鍵盤
- (void)scrollViewDidScroll:(UIScrollView *)scrollView
{
[self.onetf resignFirstResponder];
}
2)設(shè)置ScrollView的屬性keyboardDismissMode窘游,滾動(dòng)時(shí)收起鍵盤
self.tableView.keyboardDismissMode = UIScrollViewKeyboardDismissModeOnDrag;
4 統(tǒng)一收起鍵盤
?[[[UIapplication sharedApplication] keyWindow] endEditing:YES];
5. 直接發(fā)送 resignFirstResponder 消息:
[[UIApplication sharedApplication] sendAction:@selector(resignFirstResponder) to:nil from:nil forEvent:nil];