在開發(fā)中通常會遇到一些需要輸入信息相關的需求,那么就會調用到鍵盤來錄入信息,但錄入完畢鍵盤控件的回收問題從而隨之而來;
通過巧妙的回收鍵盤控件可以大大的提高用戶的體驗效果,主要都是圍繞 touch 事件和一些控件的代理監(jiān)聽方法展開實現操作;
接下來我們可以通過如下幾種事件方式根據當前需求進行使用.
一.提到錄入信息,通常優(yōu)先會想到 UITextView 和 UITextField
????使用如上兩種控件錄入是日常中最為常見的,那么將控件設置好自己相關的代理后,便可以實現對鍵盤的相關監(jiān)聽處理操作;
????首先需要將控件進行實例化,其次通過調用它們各自的代理方法來執(zhí)行對鍵盤的具體處理操作.

????注:首先需要在 interface 中引用對應控件的代理(例如:UITextFieldDelegate,?UITextViewDelegate),并將代理指向至當前控件.
二.點擊錄入區(qū)域外的區(qū)域_1
當調用控件錄入信息完畢后,點擊錄入和鍵盤之外任意區(qū)域即可將鍵盤收起,使得很自然的提升用戶體驗效果;
????可以通過 Touch 事件來實現該原理,具體實現 code 如下:

三.點擊錄入區(qū)域外的區(qū)域_2
????該方法與上面第二項中的類似,但區(qū)別在于事件觸發(fā)原理不同;
????上者為通過 Touch 事件響應的原理;
則該方法中介紹的則是通過 UIController 的 Touch Up Inside 綁定點擊事件來進行實現收起的效果;
????具體代碼實現如下:

注:該項中和第二項中所要執(zhí)行的操作都要確保為當前圖層中,即 UIController 或 UIView.
四.自定義按鈕事件
當外界沒有可供借用的資源時,可以考慮通過自定義按鈕并綁定其事件從而達到收起鍵盤的操作;
????其中需要利用通知來輔助完成,具體操作如下:
