将自定义输入视图加载到UITextField中,我可以在UIKeyboardTypeAlphabet和UIKeyboardTypeNumberPad之间任意更改标准键盘的键盘类型.只需打电话:
[editingField setKeyboardType:UIKeyboardTypeNumberPad];
[editingField reloadInputViews];
Run Code Online (Sandbox Code Playgroud)
而且中提琴!有你的号码垫.
在不更改此代码块的情况下,只是使editField成为UITextView而不是UITextField,它不再有效.根据文档,这些都符合UITextInput和UITextInputTraits协议.
值得一提的是,上面的代码实际上确实有效,但只有在用户离开有问题的textView并稍后重新选择之后.它几乎就像reloadInputViews什么都不做,然后textView在它变成FirstFirstResponder时加载它的输入视图.
我已经尝试了各种performSelector:等,并且无法强制解决问题.有任何想法吗?如何使UITextView服从reloadInputViews并动态更改其inputView?
在调用之前,您是否将UITextView的inputView设置为nil?
[editingField setKeyboardType:UIKeyboardTypeNumberPad];
[editingField reloadInputViews];
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
4137 次 |
| 最近记录: |