【发布时间】:2010-12-17 09:53:41
【问题描述】:
我想让用户输入一个新文件的名称,所以我想阻止某些字符进入。有没有我可以使用的特殊键盘,或者我可以禁用 iphone 键盘上的某些键。
是在输入文本上运行正则表达式并告诉用户文件名无效的答案(如果是这样,那个正则表达式会是什么?)
回答:(或我最终做了什么)
- (BOOL)textField:(UITextField *)textField shouldChangeCharactersInRange:(NSRange)range replacementString:(NSString *)string{
BOOL valid;
//if the user has put in a space at the beginning
if ([string isEqualToString:@" "]){
if (range.location == 0){
valid = NO;
}
else{
valid = YES;
}
}
//otherwise test for alpha numeric
else{
NSCharacterSet *alphaSet = [NSCharacterSet alphanumericCharacterSet];
valid = [[string stringByTrimmingCharactersInSet:alphaSet] isEqualToString:@""];
}
//print the warning label
if (valid == NO){
[errorLabel setText:@"Invalid input"];
}
else{
[errorLabel setText:nil];
}
return valid;
}
【问题讨论】:
标签: iphone objective-c file keyboard