mva*_*sco 1 nsnumberformatter ios
在我的iOS应用程序中,我从远程服务器接收JSON数据.其中一个字段值可以是一个双数,如24.87,或一个int数,如24.现在我想在视图中显示数字,作为标签文本,但我希望总是得到一个2位小数,如例如,如果远程值是24,我想显示24.00 ...
我使用以下代码来执行此操作:
if ([tarifa_comanda isEqualToString:@"T1"]){
cell.tarifa_label.text = @"T1";
NSNumberFormatter * f = [[NSNumberFormatter alloc] init];
[f setNumberStyle:NSNumberFormatterDecimalStyle];
NSNumber * myNumber = [f numberFromString:[[categorias objectAtIndex:indexPath.row] objectForKey:@"precio1_plato"]];
cell.precio_plato_label.text = myNumber;
}
Run Code Online (Sandbox Code Playgroud)
但我从数字输出错误.这是我得到的,标签是蓝色背景的标签:

您可以通过设置其maximumFractionDigits和minimumFractionDigits属性来设置希望格式化程序显示的最小和最小分数位数.
NSNumberFormatter *formatter = [[NSNumberFormatter alloc] init];
[formatter setNumberStyle:NSNumberFormatterDecimalStyle];
[formatter setMaximumFractionDigits:2];
[formatter setMinimumFractionDigits:2];
NSLog(@"%@", [formatter stringFromNumber:[NSNumber numberWithFloat:25.342]]);
NSLog(@"%@", [formatter stringFromNumber:[NSNumber numberWithFloat:25.3]]);
NSLog(@"%@", [formatter stringFromNumber:[NSNumber numberWithFloat:25.0]]);
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
671 次 |
| 最近记录: |