溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

IOS中開發(fā)UITextView回收或關(guān)閉鍵盤的示例分析

發(fā)布時間:2021-07-26 14:57:21 來源:億速云 閱讀:285 作者:小新 欄目:編程語言

這篇文章主要介紹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里不用回車鍵,可以把回車鍵當做退出鍵盤的響應鍵。

-(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中開發(fā)UITextView回收或關(guān)閉鍵盤的示例分析”這篇文章的所有內(nèi)容,感謝各位的閱讀!希望分享的內(nèi)容對大家有幫助,更多相關(guān)知識,歡迎關(guān)注億速云行業(yè)資訊頻道!

向AI問一下細節(jié)

免責聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點不代表本網(wǎng)站立場,如果涉及侵權(quán)請聯(lián)系站長郵箱:is@yisu.com進行舉報,并提供相關(guān)證據(jù),一經(jīng)查實,將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI