我看过其他例子并尝试过
- (BOOL)textField:(UITextField *)textField shouldChangeCharactersInRange:(NSRange)range replacementString:(NSString *)string
我不知道我做错了什么,我刚开始编写我的第一个 Iphone 应用程序
这就是我想要做的
我有 4 个文本字段,每个文本字段在键入时都有字母数量限制我使用以下代码完成了此操作
- (BOOL)textField:(UITextField *)textField shouldChangeCharactersInRange:(NSRange)range replacementString:(NSString *)string
{
int valid;
NSString *cs2 = [textField.text stringByReplacingCharactersInRange:range withString:string];
// int charCount = [cs2 length];
if(textField == cvv){
valid = 4;
}else if(textField == cardName) {
valid=26;
}else if(textField == expDate) {
valid=5;
// if (charCount == 2 ) {
// textField.text = [cs2 stringByAppendingString:@"/"];
// textField.text = cs2;
// return YES;
// }
}else if(textField == acNumber) {
valid=19;
}
return !([cs2 length] > valid);
在这里工作正常,我有一个文本字段,用户在其中输入 Exp 日期并希望将其格式化为好像我输入 112 那么它应该显示为 01/12 如果我输入 2 那么它应该显示为 1122
我尝试检查文本字段值的长度是否为 2,然后附加一个 / 但是当我输入 12 时它给了我 11/22