IQKeyboardManager 獲取完成按鈕的解決辦法
背景
我這邊要做一個城市三級選擇頁面,用pickerView做。
addressLabelText.inputView = pickerView
我指定了textFlied的inputView。由於專案已經整合了IQKeyboardManager所以不用單獨設定toolbar。
問題
點選textflied的時候什麼都不選擇,點選完成按鈕。內容是不填充到text的。
陷入誤區
於是想找到IQKeyboardManager的done事件,找了原始碼很久發現作者並不想提供這類事件。如果強制改變原始碼可以實現,但是為什麼別人都沒有提出這個問題呢。
解決辦法
原來是我自己陷入的誤區,我一直在想監聽點選完成按鈕。其實IQKeyboardManager設計初衷不就是為了輸入的時候鍵盤和輸入框位置的調整嗎?必然完成按鈕和輸入框狀態有必然聯絡。
我們只需要監聽text狀態即可,如我需要監聽
func textFieldDidEndEditing(_ textField: UITextField) {
}
感悟
存在即合理同樣的,不存在也是合理的。不要強行的去另闢蹊徑,多想想背後的原理再動手。
相關文章
- 人人生成器test類的按鈕消失解決辦法
- Jenkins解決無法獲取外掛的辦法Jenkins
- 獲取選中表單按鈕的值
- 當laravel獲取不到session的三種解決辦法LaravelSession
- win7DHCP獲取不到ip的解決辦法Win7
- 點選按鈕獲取當前位置
- SSH在呼叫Service時獲取為空-解決辦法
- win10獲取會員版本是灰色的解決辦法Win10
- Dynamics 365 配置IFD的嚮導介面下一步按鈕禁用的解決辦法
- 獲取cookie辦法Cookie
- Word2010撤銷按鈕失效,Ctrl+Z失效解決辦法
- asp.net無法獲取kindeditor文字編輯器內容的解決辦法ASP.NET
- jQuery獲取選中的核取方塊或者單按鈕的值jQuery
- 教程中使用bootstrap5之後,點選導航按鈕不展開的解決辦法boot
- WPF 應用程式開機自啟動及窗體關閉按鈕作用失效的解決辦法
- win10指紋開關按鈕灰色怎麼辦_win10指紋設定按鈕灰色的解決教程Win10
- 微軟商店無法獲取怎麼辦_win10應用商店點獲取沒反應的解決方法微軟Win10
- JavaScript獲取選中radio單選按鈕值JavaScript
- 原生js獲取radio按鈕選中值程式碼JS
- JavaScript 獲取radio 選中單選按鈕值JavaScript
- jQuery獲取被選中radio單選按鈕的值jQuery
- js如何獲取選中radio單選按鈕的值JS
- jQuery如何獲取選中單選按鈕radio的值jQuery
- android中HttpClient獲取Session然後使用 WebView共享session的解決辦法(轉)AndroidHTTPclientSessionWebView
- MFC 捕獲按鈕 按下和抬起 (轉)
- Win10系統下無法刪除輸入法按鈕呈灰色的解決方法Win10
- vue js 獲取滾動距離 以及 返回頂部按鈕VueJS
- 10g控制檯按鈕亂碼的解決
- 自定義一個酷炫的提交完成按鈕
- cookie不能獲取自己設定的,只能獲取系統的名字為JSESSIONID的cookie的解決辦法CookieJSSession
- jQuery.getJSON的快取問題的解決辦法jQueryJSON快取
- SpringBoot打jar包或war包獲取不到資原始檔解決辦法Spring BootJAR
- SDWebImage訪問HTTPS站點獲取圖片資源失敗解決辦法WebHTTP
- laravel 使用 axios 通過 put 上傳檔案獲取不到資料的解決辦法LaraveliOS
- window10無法完成格式化怎麼辦_window10無法完成格式化的解決方法
- OpenStack 的NAT解決辦法
- 公寓噪音的解決辦法
- Java讀取檔案中含有中文的解決辦法 (轉)Java