2013-05-09 162 views
0

我有一個UITextview,當用戶點擊UITextview我需要隱藏默認鍵盤。對於我所做的一切,iOS隱藏默認鍵盤並打開自定義鍵盤

[myTextView setEditable: NO]; 

因此不會顯示鍵盤,在這裏,我已經創建了一個自定義視圖與UIButton,我需要證明這UIView當用戶點擊UITextView,爲我所做的一切,

textViewDidBeginEditing{ 

//Here i have added UIView as subview 

} 

但是這種方法是行不通的,因爲,

[myTextView setEditable: NO]; 

,我需要關閉UIView當用戶點擊裏面的關閉按鈕UIView

回答

3

您應該使用resignFirstResponder而不是將UITextView設置爲不可編輯。這會隱藏系統鍵盤。

[myTextView resignFirstResponder]; 

如果要使用不同的視圖鍵盤則系統提供一個然後在UITextView的您要安裝的系統鍵盤使用的自定義視圖設置inputView

myTextView.inputView = myCustomView; 
+0

什麼是當用戶點擊UItTextVeiw時顯示我的自定義視圖的可能方法..? – 2013-05-09 17:43:23

+0

@HarishSaran只需在UITextView上設置'inputView'指向你的自定義視圖,然後用戶就可以在控制器上的'viewDidLoad'方法上點擊UITextView – 2013-05-09 17:44:39

+0

@powers:非常感謝..我接受了答案...... .. – 2013-05-09 17:46:30

1

也許使用textFieldShouldBeginEditing代替setEditable: NO作品?

- (BOOL)textFieldShouldBeginEditing:(UITextField *)textField 
{ 
    //Here i have added UIView as subview 
    return NO; 
}