iOS隐藏默认键盘并打开自定义键盘

时间:2013-05-09 17:18:56

标签: ios objective-c uitextview uikeyboard

我有UITextview,当用户点击UITextview时,我需要隐藏默认键盘。为此,我已经完成了,

 [myTextView setEditable: NO];

所以键盘没有显示,这里我创建了一个UIButton的自定义视图,我需要在用户点击UIView时显示此UITextView,因为我已经完成了,

textViewDidBeginEditing{

//Here i have added UIView as subview 

}

但是由于这个方法不起作用,

[myTextView setEditable: NO];

,当用户点击UIView

内的关闭按钮时,我需要关闭UIView

2 个答案:

答案 0 :(得分:3)

您应该使用resignFirstResponder而不是将UITextView设置为不可编辑。这将隐藏系统键盘。

 [myTextView resignFirstResponder];

如果要为键盘使用不同的视图,系统会提供一个,然后将UITextView上的inputView设置为您要用来代替系统键盘的自定义视图。

myTextView.inputView = myCustomView;

答案 1 :(得分:1)

也许使用textFieldShouldBeginEditing代替setEditable: NO有效?

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