iOS 開發之 - 關閉鍵盤 退出鍵盤 的5種方式
1、點擊編輯區以外的地方(UIView)
2、點擊編輯區域以外的地方(UIControl)
3、使用制作收起鍵盤的按鈕
4、使用判斷輸入字元
5、關于鍵盤遮蔽的問題
1,點擊編輯區以外的地方(UIView)
這是一種很直覺的方法,當不再需要使用虛擬鍵盤時,只要點擊虛擬鍵盤和編輯區域外的地方,就可以將鍵盤收起,下面程式碼是在 UIView 中內建的觸碰事件方法函式,您可以參考 Touch Panel / 觸碰螢幕 / 壓力感應器的基本使用方式一文,找到更多關于觸碰事件的方法函式。
- (void)touchesEnded:(NSSet *)touches withEvent:(UIEvent *)event { if (![myTextView isExclusiveTouch]) { [myTextView resignFirstResponder]; } }
如果要使用此方式請務必記得,你操作畫面的 Custom Class 一定要是 UIView 才行。
畫面的 Custom Class 為 UIView
2. 點擊編輯區域以外的地方(UIControl)
收起虛擬鍵盤的方式與前一種相同,但是如果你的觸碰事件里已經且寫滿了程式碼,那么就可以考慮使用,UIControl 的 Touch Up Inside 事件來收起鍵盤,方法是將以下程式碼與 UIControl 的 Touch Up Inside 事件連結即可。
- (IBAction)dismissKeyboard:(id)sender { [myTextView resignFirstResponder]; }
如果要使用此方式請務必記得,你操作畫面的 Custom Class 一定要是 UIControl 才行。
畫面的 Custom Class 為 UIControl
將收起鍵盤的方法與 UIControl 事件連結
3. 使用制作收起鍵盤的按鈕
當沒有編輯區域以外的地方可供點擊來收起鍵盤,自己制作一個按鈕來收起目前的虛擬鍵盤,也是一個不錯的方法,由于按鈕必須在虛擬鍵盤出現才能顯示于畫面上,因此必須借用 NSNotificationCenter 來幫助我們判斷目前鍵盤的狀態。
首先在 viewDidLoad: 事件中,向 NSNotificationCenter 進行
主站蜘蛛池模板:
师宗县|
高安市|
平乡县|
织金县|
天长市|
黄石市|
东丰县|
鄂尔多斯市|
镇平县|
襄汾县|
仪征市|
津市市|
德州市|
紫阳县|
古交市|
景泰县|
根河市|
开原市|
宜良县|
南雄市|
巴林左旗|
马尔康县|
古田县|
大冶市|
日土县|
外汇|
高平市|
五常市|
临汾市|
杨浦区|
洪江市|
安福县|
安乡县|
泰顺县|
柳林县|
东台市|
沂源县|
武城县|
昌邑市|
永丰县|
故城县|