【问题标题】:Formatting a NSNumber as percentage (%) with one decimal place using NSNumberFormatter使用 NSNumberFormatter 将 NSNumber 格式化为带一位小数的百分比 (%)
【发布时间】:2012-02-24 15:34:49
【问题描述】:
我正在尝试将包含值 0.305 的 NSNumber 格式化为“30.5%”。
但是,我的以下代码不起作用:
[numberFormatter setNumberStyle:NSNumberFormatterPercentStyle];
[numberFormatter setLocale:[NSLocale currentLocale]];
如何指定数字格式为带一位小数的百分比?
【问题讨论】:
标签:
objective-c
ios
nsnumber
【解决方案1】:
这对我有用:
[numberFormatter setNumberStyle:NSNumberFormatterPercentStyle];
[numberFormatter setMinimumFractionDigits:1];
【解决方案2】:
为实际正确答案编辑:
[numberFormatter setNumberStyle:NSNumberFormatterPercentStyle];
[numberFormatter setMinimumFractionDigits:1];
【解决方案3】:
试试
float percent = 0.305;
NSString *formattedPercentText = [NSString stringWithFormat:@"%.1f%%", percent * 100];
【解决方案4】:
我也在使用 setMaximum
float precent = 3.5;
NSNumberFormatter * numberFormatter = [[NSNumberFormatter alloc]init];
[numberFormatter setNumberStyle:NSNumberFormatterPercentStyle];
[numberFormatter setMinimumFractionDigits:1];
[numberFormatter setMaximumFractionDigits:1];
return [numberFormatter stringFromNumber:[NSNumber numberWithFloat:precent]];