禁用UITextfield的键盘
我想知道如何禁用UITextfield的inputview。 设置textField.inputView = nil;
或ShouldBeginEditing中的[textField setInputView:nil]
不会执行任何操作,并且使用userInteraction
属性将删除与字段交互的function。 理想情况下,我想删除光标和键盘,同时仍然可以交互和使用ShouldBeginEditing和ShouldEndEditing的文本字段方法之间切换。 有什么办法可以做到这一点?
你应该做这个:
myTextField.inputView = UIView.new; //Empty UIView
将其设置nil
只是表示使用了默认的键盘。
为了摆脱脱字符,子类UITextField并重写caretRectForPosition
:
- (CGRect) caretRectForPosition:(UITextPosition*)position { return CGRectZero; }
尝试这个 :
-(BOOL)textFieldShouldBeginEditing:(UITextField *)textField { return NO; // Hide both keyboard and blinking cursor. }
要么
-(void)textFieldDidBeginEditing:(UITextField *)textField{ [textField resignFirstResponder]; // hides keyboard }