mic*_*ael 58 iphone cocoa-touch uitextfield iphone-softkeyboard
我在我的应用程序中放了一个数字小键盘,用于在文本视图中输入数字,但为了输入数字,我必须单击文本视图.一旦我这样做,常规键盘出现,我不想要.
如何完全禁用键盘?任何帮助是极大的赞赏.
Roh*_*nNZ 99
默认情况下,UITextField的inputView属性为nil,这意味着将显示标准键盘.
如果为其指定自定义输入视图,或仅为虚拟视图,则键盘将不会出现,但仍会出现闪烁的光标:
UIView* dummyView = [[UIView alloc] initWithFrame:CGRectMake(0, 0, 1, 1)];
myTextField.inputView = dummyView; // Hide keyboard, but show blinking cursor
Run Code Online (Sandbox Code Playgroud)
如果要隐藏键盘和闪烁的光标,请使用以下方法:
-(BOOL)textFieldShouldBeginEditing:(UITextField *)textField {
return NO; // Hide both keyboard and blinking cursor.
}
Run Code Online (Sandbox Code Playgroud)
Mar*_*ñuk 58
在Swift 2.x,3.x,4.x中
textField.inputView = UIView()
Run Code Online (Sandbox Code Playgroud)
诀窍
如果是 UITextField,则可以将其enabled属性设置为 NO。
如果它是一个 UITextView,你可以-textViewShouldBeginEditing:在它的委托中实现返回 NO,这样它就永远不会开始编辑。或者您可以将其子类化并覆盖-canBecomeFirstResponder以返回 NO。或者你可以利用它的编辑行为,将你的数字按钮放入一个视图中,用作文本视图的inputView. 这应该会导致在编辑文本视图时显示按钮。这可能是也可能不是您想要的。
| 归档时间: |
|
| 查看次数: |
56276 次 |
| 最近记录: |