[UI控件问题] 判断UITextField的输入只为数字的方法
2012-01-02 18:13
501 查看
实现下面的委托
#define NUMBERS @"0123456789\n"
- (BOOL)textField:(UITextField *)textField shouldChangeCharactersInRange:(NSRange)range replacementString:(NSString *)string
{
NSCharacterSet *cs;
if(textField == phoneNumberField)
{
cs = [[NSCharacterSet characterSetWithCharactersInString:NUMBERS] invertedSet];
NSString *filtered = [[string componentsSeparatedByCharactersInSet:cs] componentsJoinedByString:@""];
BOOL basicTest = [string isEqualToString:filtered];
if(!basicTest)
{
UIAlertView* alert = [[UIAlertView alloc] initWithTitle:@"提示"
message:@"请输入数字"
delegate:nil
cancelButtonTitle:@"确定"
otherButtonTitles:nil];
[alert show];
[alert release];
return NO;
}
}
//其他的类型不需要检测,直接写入
return YES;
}
如果输入的不是数字,进行提示。
主要方法就是使用
NSString *filtered = [[string componentsSeparatedByCharactersInSet:cs] componentsJoinedByString:@""];
BOOL basicTest = [string isEqualToString:filtered];
判断输入的字条是不是在指定的字符里,如数字就是0123456789,当然也可以加入小数点等。
可以设置键盘模式吧 只为数字.textfield.keyboardType=UIKeyboardTypeNumberPad
#define NUMBERS @"0123456789\n"
- (BOOL)textField:(UITextField *)textField shouldChangeCharactersInRange:(NSRange)range replacementString:(NSString *)string
{
NSCharacterSet *cs;
if(textField == phoneNumberField)
{
cs = [[NSCharacterSet characterSetWithCharactersInString:NUMBERS] invertedSet];
NSString *filtered = [[string componentsSeparatedByCharactersInSet:cs] componentsJoinedByString:@""];
BOOL basicTest = [string isEqualToString:filtered];
if(!basicTest)
{
UIAlertView* alert = [[UIAlertView alloc] initWithTitle:@"提示"
message:@"请输入数字"
delegate:nil
cancelButtonTitle:@"确定"
otherButtonTitles:nil];
[alert show];
[alert release];
return NO;
}
}
//其他的类型不需要检测,直接写入
return YES;
}
如果输入的不是数字,进行提示。
主要方法就是使用
NSString *filtered = [[string componentsSeparatedByCharactersInSet:cs] componentsJoinedByString:@""];
BOOL basicTest = [string isEqualToString:filtered];
判断输入的字条是不是在指定的字符里,如数字就是0123456789,当然也可以加入小数点等。
可以设置键盘模式吧 只为数字.textfield.keyboardType=UIKeyboardTypeNumberPad
相关文章推荐
- 判断UITextField的输入只为数字的方法
- iPad开发--UItextfield中输入类似于数学计算上的数字的方法
- android判断EditText输入的数字、中文还是字母方法
- 关于UITextField 支持中文、英文和数字的限制问题,以及中文九宫格无法输入的解决
- 判断UITextField的输入只为数字的…
- [ASP.NET 2.0]定制C#TextBox控件中只允许输入数字的解决方法
- input只能输入数字,对数字进行判断,且修复IE下无法使用光标,无法中间输入的问题
- UI控件的一些问题与解决方法
- php判断输入是否是纯数字,英文,汉字的方法
- Snail—UI学习之数字输入控件UIStepper
- android 判断EditText中输入的值是数字、字母还是汉字的方法
- JAVA 中两种判断输入的是否是数字的方法
- java从键盘输入数字并判断大小的方法
- Java中判断输入的字符串是否为数字常用方法
- Android中判断输入的字符串是否为数字,可以解决如输入为点出现的问题
- js判断是否输入的为数字的方法
- java判断输入的是否为数字的方法
- 判断是否输入全角数字,解决部分客户银行账号输入的问题
- UITextField 只允许输入数字和字母 解决联想中文等问题
- android判断EditText输入的数字、中文还是字母方法