有些情況下,我們可能需要隱藏鍵盤,但是保持輸入框的編輯狀態,游標不消失.
比如:在介面上加上語音輸入功能.
通常取消鍵盤的做法://1.檢視取消編輯態
[self
.view endediting:yes];
//2.輸入框取消第一響應
if ([self
.textview canresignfirstresponder])
以上方法, 雖然成功的隱藏鍵盤, 但是其原理都是通過取消輸入框的第一響應實現的.而取消了輸入框的響應狀態, 自然游標就消失, 如果需要保持游標, 就需要用到:
//替換輸入檢視(隱藏系統鍵盤或可使用自定義)
_textview.inputview = [[uiview alloc] initwithframe:cgrectzero];
_textview.inputaccessoryview = [[uiview alloc] initwithframe:cgrectzero];
[_textview reloadinputviews];
//輸入檢視為系統預設鍵盤
_textview.inputview = nil;
_textview.inputaccessoryview = nil;
使用以上方法, 在ipad + ios 9 以上系統中, 會在鍵盤上方出現*******無法取消的情況:
這時候需要用到:
// ipad + ios > 9.0 取消鍵盤上的*******
if ([iosversion floatvalue] >= 9.0 )
the en iOS 鍵盤顯示與隱藏
目前我所接觸到的鍵盤處理方法有兩種,第一種是通過約束,第二種是通過transform。監聽鍵盤通知 void viewdidload void dealloc pragma mark 鍵盤處理 void keyboardwillshow nsnotification note void keyboa...
iOS 實現隱藏系統鍵盤
實現隱藏系統鍵盤,顯示自定義鍵盤吧 uitextfield獲取焦點時,進入textfieldshouldbeginediting方法,在這個方法中註冊兩個通知 nsnotificationcenter defaultcenter addobserver self selector selector ...
EditText游標控制和軟鍵盤隱藏
edittext android id id vercodeedit android cursorvisible false 布局屬性 直接可以設定游標是否顯示 false為隱藏 true為顯示vercodeedit.setontouchlistener new view.ontouchlisten...