我的XIB文件中有UITextField
和UIDatePicker
,现在我将在UIDatePicker
上选择的日期指定为文本字段中文本的值。我做得很好,我现在唯一的问题是,当我点击文本字段时,我希望键盘不显示。我确定有人知道答案,如果你愿意分享,我会很高兴:)谢谢!
顺便说一句。我尝试过这个,但它不起作用..
- (void)textFieldDidBeginEditing:(UITextField *)textField
{
[textField resignFirstResponder];
}
只需将UIDatePicker
设置为UITextField
的inputView即可。
当用户使用UItextField
点击UIDatePicker
时,这将重新键入键盘作为输入视图。
self.dateTextField.inputView = self.datePicker;
您可以在UITextField
中设置委托,并在NO
中返回textFieldShouldBeginEditing
。
试试这个:
- (BOOL)textFieldShouldBeginEditing:(UITextField *)textField
{
if (textField.tag == YOU_TEXT_FIELD_TAG) {
return NO;
}
return YES;
}
不要忘记让你的ViewController符合<UITextFieldDelegate>
并设置yourTextField.delegate = self;
由于我没有看到完整的答案,我也需要,并在这里找到解决方案,我会把我的代码。
简单地将一些“空白”UIView作为输入视图。
目标C.
UIView *hideKeyboardView = [[UIView alloc]init];
self.yourTextField.inputView = hideKeyboardView;
迅速
let hideKeyboardView = UIView()
yourTextField.inputView = hideKeyboardView
我已经修好了!我在viewDidLoad
上添加了以下代码
[self.dateField addTarget:self action:@selector(textFieldDidBeginEditing:)
forControlEvents:UIControlEventEditingDidBegin];
我还在使用
- (void)textFieldDidBeginEditing:(UITextField *)textField
{
[textField resignFirstResponder];
}
无论如何,谢谢你的帮助!希望这个帖子能帮助别人..