首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >Iphone UITextField only整数

Iphone UITextField only整数
EN

Stack Overflow用户
提问于 2010-04-27 16:18:03
回答 7查看 35.5K关注 0票数 16

我的IB中有一个UITextField,我想检查用户是否只输入了数字(没有字符)并获得整数值。

我像这样得到UITextField的整数值:

代码语言:javascript
复制
int integer = [myUITexrtField.text intValue];

当我把一个字符(,;.)它返回0,而我不知道如何检测它不仅仅是数字。

我该怎么做呢?

EN

回答 7

Stack Overflow用户

回答已采纳

发布于 2010-04-27 16:30:07

http://rosettacode.org/wiki/Determine_if_a_string_is_numeric#Objective-C

或者,您可以确保当焦点出现在字段上时,只显示数字键盘

票数 4
EN

Stack Overflow用户

发布于 2011-06-12 21:11:24

如下所示实现shouldChangeCharactersInRange方法不允许用户输入非数字字符。

代码语言:javascript
复制
- (BOOL)textField:(UITextField *)textField shouldChangeCharactersInRange:(NSRange)range replacementString:(NSString *)string { 
    NSCharacterSet *nonNumberSet = [[NSCharacterSet decimalDigitCharacterSet] invertedSet];
    return ([string stringByTrimmingCharactersInSet:nonNumberSet].length > 0) || [string isEqualToString:@""];
}

如果字符串是数字,则返回YES,否则返回NO。字符串isEqualToString@"“支持退格键删除。

我喜欢这种方法,因为它很干净。

票数 49
EN

Stack Overflow用户

发布于 2010-04-28 15:55:21

请确保设置文本字段委托

使用以下函数确保用户只能键入数字:

代码语言:javascript
复制
- (BOOL)textField:(UITextField *)textField shouldChangeCharactersInRange:(NSRange)range replacementString:(NSString *)string
{

    NSNumberFormatter *numberFormatter = [[NSNumberFormatter alloc] init];
    [numberFormatter setNumberStyle:NSNumberFormatterDecimalStyle];

    NSNumber* candidateNumber;

    NSString* candidateString = [textField.text stringByReplacingCharactersInRange:range withString:string];

    range = NSMakeRange(0, [candidateString length]);

    [numberFormatter getObjectValue:&candidateNumber forString:candidateString range:&range error:nil];

    if (([candidateString length] > 0) && (candidateNumber == nil || range.length < [candidateString length])) {

        return NO;
    }
    else 
    {
        return YES;
    }
}
票数 17
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/2719680

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档