如何在UITextField中禁用双击键盘弹出



我有几个UITextFields。我想禁用自动纠错/键盘的"双击"。我使用一个tap函数来选择激活哪个UITextField。

你可以使用UITextView的textFieldShouldBeginEditing Delegate方法告诉UITextField不要开始编辑过程:

- (BOOL)textFieldShouldBeginEditing:(UITextField *)textField {
  if (some conditon) {
    return NO;
  } else {
    return YES;
  }
}

关于该方法的Apple文档参考:http://developer.apple.com/library/ios/文档/uikit/引用/UITextFieldDelegate_Protocol/UITextFieldDelegate UITextFieldDelegate.html

some condition可能是一个检查,看看用户是否正在选择UITextField来激活它,或者它是否已经激活,它应该把键盘打开。

你可以子类化UITextView给它一个"selected"属性,并使它成为一个UITextViewDelegate。如果"selected"为false,则在textFieldShouldBeginEditing:中将其设置为true并返回NO;否则,返回YES。

最新更新