UITextView / UITextField在编辑时,在不作任何处理的状况下,系统默认会自动弹出系统键盘。在一些状况下,须要使用自定义键盘,所以须要对系统键盘处理,1) 自定义键盘就是inputView属性,可是inputView不会随着键盘的出现而出现,只会当UITextView / UITextField恢复第一响应者时显示出来,再也不显示系统键盘了;2 ) 设置inputAccessoryView属性,它会随着键盘(系统或则自定义键盘)一块出现,而且在键盘的顶部,inputAccessoryView默认是nil,通常能够使用UIToolBar的实例对象来做为inputAccessoryView,用于回收 改变键盘;3 ) 注意:想使UIToolBar的实例对象在键盘的顶部,除了将这个实例对象设置为inputAccessoryView来实现外,也能够经过UIToolBar的实例对象的底部和所在的控制器view的底部同样来设置底部约束来实现。spa
常见的自定义键盘的两种使用需求:1 只须要自定义的键盘,不用切换到系统键盘 了 2 须要自定义键盘和系统键盘自由切换对象
1 只须要自定义键盘的处理方法:self.textView / textField为须要使用自定义键盘的UITextView / UITextField的实例对象,emoticonKeyboardView为自定义键盘input
2 须要自定义键盘和系统键盘自由切换的处理方法:sso
尤为注意:1 当self.textView / textField.inputView = nil时,会显示系统键盘。事实上,UITextView / UITextField在编辑时,在不作任何处理的状况下,系统默认会自动弹出系统键盘,此时就是inputView为nil。 2 键盘的隐藏设置:[self.textView / textField resignFirstResponder]方法