1
iOS中我有一個距離選擇是:如何呈現一個浮到2位,只有當它低於1
0.25 miles
1.00 miles
3.00 miles
,並呈現出如:
cell.textLabel.text=[NSString stringWithFormat: @"%.2f miles", [i floatValue]];
將如何我只呈現:
0.25
1
3
THX
iOS中我有一個距離選擇是:如何呈現一個浮到2位,只有當它低於1
0.25 miles
1.00 miles
3.00 miles
,並呈現出如:
cell.textLabel.text=[NSString stringWithFormat: @"%.2f miles", [i floatValue]];
將如何我只呈現:
0.25
1
3
THX
你意思是,如果它不到一個,做點別的?
if ([i floatValue]<1) {
cell.textLabel.text=[NSString stringWithFormat: @"%.2f miles", [i floatValue]];
}
else {
cell.textLabel.text=[NSString stringWithFormat: @"%.0f miles", [i floatValue]];
}
嘗試使用NSNumberFormatter
。簡單例子:
NSNumberFormatter *numberFormatter = [[NSNumberFormatter alloc]init];
[numberFormatter setMaximumFractionDigits:2];
[numberFormatter setMinimumFractionDigits:0];
[numberFormatter setNumberStyle:NSNumberFormatterDecimalStyle];
double d1 = 0.25;
double d2 = 1.00;
double d3 = 3.00;
NSLog(@"d1: %@\nd2: %@\nd3: %@", [numberFormatter stringFromNumber:[NSNumber numberWithDouble:d1]], [numberFormatter stringFromNumber:[NSNumber numberWithDouble:d2]], [numberFormatter stringFromNumber:[NSNumber numberWithDouble:d3]]);
輸出:
2012-05-16 07:50:17.153 testApp[266:207] d1: 0,25
d2: 1
d3: 3
希望它可以幫助