大家好,
我正在做一个项目,当我们单击文本字段时,要求键盘不应弹出,因为我们正在为特定文本字段制作数字键盘,并且我们已经成功地做到了这一点。
- (BOOL)textFieldShouldBeginEditing:(UITextField *)textField {
if (textField == dateFld) {
UIView* dummyView = [[UIView alloc] initWithFrame:CGRectMake(0, 0, 1, 1)];
textField.inputView = dummyView;
}
}
现在我的问题是,我想验证该文本字段仅接受特定格式和有限数量的输入,但我无法执行此操作,因为当我们禁用键盘弹出下方时,该方法没有被调用是我的代码验证文本字段。
- (BOOL)textField:(UITextField *)textField shouldChangeCharactersInRange:(NSRange)range replacementString:(NSString *)string
{
//Format Date of Birth YYYY-MM-DD
if(textField == dateFld)
{
if ((dateFld.text.length == 4)||(dateFld.text.length == 7))
//Handle backspace being pressed
if (![string isEqualToString:@""])
dateFld.text = [dateFld.text stringByAppendingString:@"-"];
return !([textField.text length]>9 && [string length] > range.length);
}
else
return YES;
}
请帮助我摆脱这个问题或任何其他方式来做到这一点。
谢谢