0

如何在 UILabel 中用逗号显示整数?

像这样:30000 --> 30,000

我的英语不是那么好,所以我不知道要搜索什么。

谢谢您的回答。

4

3 回答 3

2

使用 NSNumberFormatter 并做一些事情:

NSInteger integerValue=30000;
NSNumberFormatter *numberFormatterComma = [NSNumberFormatter new];
[numberFormatterComma setNumberStyle:NSNumberFormatterDecimalStyle];
NSString *formatted = [numberFormatterComma stringFromNumber:[NSNumber numberWithInteger:integerValue]];
NSLog(@"--> %@",formatted);

现在你可以把formatted字符串放到你的标签上。

于 2013-01-13T11:04:28.033 回答
1

你想看看 NSNumberFormatter

这是一个例子

    self.numberFormat = [[NSNumberFormatter alloc] init];  

        //set up formatter for display text
    [self.numberFormat setNumberStyle:NSNumberFormatterDecimalStyle];
    [self.numberFormat setRoundingMode:NSNumberFormatterRoundFloor];
    [self.numberFormat setMinimumFractionDigits:0];
    [self.numberFormat setMinimumIntegerDigits:1];
    [self.numberFormat setMaximumFractionDigits:24];
    [self.numberFormat setMaximumSignificantDigits:24];

    NSString* formattedText = 
     [self.numberFormat stringFromNumber:[self.numberFormat numberFromString:rawString]];

注意不要经常分配/初始化它们,它们是很重的对象。最好创建一次并保存在一个属性中以供重复使用。如果您正在制作 OSX 应用程序(而不是 ios),您还可以在 Interface Builder 中获得格式化对象,您可以拖动它们并在属性检查器中设置它们的参数。

于 2013-01-13T11:08:22.133 回答
0

// 逗号分隔的数字转换

-(NSString*)convertNumericIntoCommaSeperatedValue:(NSString*)string{

NSNumberFormatter *frmtr = [[NSNumberFormatter alloc] init];

[frmtr setGroupingSize:3];

[frmtr setGroupingSeparator:@","];

[frmtr setUsesGroupingSeparator:YES];

NSString *commaSeperatedString = [frmtr stringFromNumber:[NSNumber numberWithLongLong:[string longLongValue]]];

[frmtr release],frmtr=nil;

return commaSeperatedString;
}
于 2013-01-13T12:15:18.207 回答