IOS 開發(fā)UITextView回收或關(guān)閉鍵盤
IOS 開發(fā)UITextView回收或關(guān)閉鍵盤
iOS開發(fā)中,發(fā)現(xiàn)UITextView沒有像UITextField中textFieldShouldReturn:這樣的方法,那么要實現(xiàn)UITextView關(guān)閉鍵盤,就必須使用其他的方法,下面是可以使用的幾種方法。
1.如果你程序是有導航條的,可以在導航條上面加多一個Done的按鈕,用來退出鍵盤,當然要先實UITextViewDelegate。
- (void)textViewDidBeginEditing:(UITextView *)textView { UIBarButtonItem *done = [[[UIBarButtonItem alloc] initWithBarButtonSystemItem:UIBarButtonSystemItemDone target:self action:@selector(leaveEditMode)] autorelease]; self.navigationItem.rightBarButtonItem = done; } - (void)textViewDidEndEditing:(UITextView *)textView { self.navigationItem.rightBarButtonItem = nil; } - (void)leaveEditMode { [self.textView resignFirstResponder]; }
2.如果你的textview里不用回車鍵,可以把回車鍵當做退出鍵盤的響應(yīng)鍵。
-(BOOL)textView:(UITextView *)textView shouldChangeTextInRange:(NSRange)range replacementText:(NSString *)text { if ([text isEqualToString:@"\n"]) { [textView resignFirstResponder]; return NO; } return YES; }
這樣無論你是使用電腦鍵盤上的回車鍵還是使用彈出鍵盤里的return鍵都可以達到退出鍵盤的效果。
3.第三種方法感覺效果比上面兩種都好,就是在彈出的鍵盤上面加一個view來放置退出鍵盤的Done按鈕。
UIToolbar * topView = [[UIToolbar alloc]initWithFrame:CGRectMake(0, 0, 320, 30)]; [topView setBarStyle:UIBarStyleBlack]; UIBarButtonItem * helloButton = [[UIBarButtonItem alloc]initWithTitle:@"Hello" style:UIBarButtonItemStyleBordered target:self action:nil]; UIBarButtonItem * btnSpace = [[UIBarButtonItem alloc]initWithBarButtonSystemItem:UIBarButtonSystemItemFlexibleSpace target:self action:nil]; UIBarButtonItem * doneButton = [[UIBarButtonItem alloc]initWithTitle:@"Done" style:UIBarButtonItemStyleDone target:self action:@selector(dismissKeyBoard)]; NSArray * buttonsArray = [NSArray arrayWithObjects:helloButton,btnSpace,doneButton,nil]; [doneButton release]; [btnSpace release]; [helloButton release]; [topView setItems:buttonsArray]; [tvTextView setInputAccessoryView:topView]; -(IBAction)dismissKeyBoard { [tvTextView resignFirstResponder]; }
感謝閱讀,希望能幫助到大家,謝謝大家對本站的支持!
- IOS 中UITextField和UITextView中字符串為空和空格的解決辦法
- IOS 中UITextField,UITextView,UILabel 根據(jù)內(nèi)容來計算高度
- iOS UITextField、UITextView只限輸入中文、英文、數(shù)字及實時限制字符個數(shù)的封裝實現(xiàn)代碼
- iOS開發(fā)中Swift3 監(jiān)聽UITextView文字改變的方法(三種方法)
- iOS中的UITextView文字輸入光標使用技巧小結(jié)
- iOS應(yīng)用開發(fā)中的文字選中操作控件UITextView用法講解
- iOS UITextView 首行縮進 撤銷輸入 反撤銷輸入的實現(xiàn)代碼
相關(guān)文章
Clion配置opencv開發(fā)環(huán)境的詳細過程
這篇文章主要介紹了Clion配置opencv開發(fā)環(huán)境的詳細過程,本文給大家介紹的非常詳細,對大家的學習或工作具有一定的參考借鑒價值,需要的朋友可以參考的下2022-04-04C++運行時類型識別與轉(zhuǎn)換實現(xiàn)方法
運行時類型識別可能被認為是C++中一個”次要“的特征,當程序員在編程過程中陷入非常困難的境地時,實用主義將會幫助他走出困境2022-10-10詳解C++ 多態(tài)的兩種形式(靜態(tài)、動態(tài))
這篇文章主要介紹了C++ 多態(tài)的兩種形式,幫助大家更好的理解和學習c++,感興趣的朋友可以了解下2020-08-08