1

我有一个用数组填充的 UIPickerView。它有两列,我需要第一列从 50 到 500。第二列从 0.01 变为 1。重点是让用户选择他们的体重。为了做 50-500 我有这个,

-(void)populateWeightPickerArray{
weightPickerArray = [[NSMutableArray alloc] init];
for (int weight = 50; weight <=500; weight++) {
    NSString *weightString = [NSString stringWithFormat:@"%d%",weight];
    [weightPickerArray addObject:weightString];
}
}  

我尝试用小数来做,但是当我使用 ++ 时,它会增加整数,我最终得到 1.01、2.01、3.01 等。这就是我的代码。

-(void)populateWeightPickerArray2{
weightPickerArray2 = [[NSMutableArray alloc] init];
for (float weightDecimal = .01; weightDecimal <= 10; weightDecimal++) {
    NSString *weightDecimalString = [NSString stringWithFormat:@"%0.2f",weightDecimal];
    [weightPickerArray2 addObject:weightDecimalString];
}   
}

(我知道我说我只需要它去 1 而不是 10,但我放了 10,因为一开始它只显示 1.01,所以我放 10 来测试输出,直到我能把它弄好。)

所以我需要以某种方式增加它以使其从 0.01 变为 1(0.02、0.03、0.04 等)。有人知道怎么做吗?

4

1 回答 1

0
for (float weightDecimal = .01; weightDecimal <= 10; weightDecimal = weightDecimal + 0.01)

或更简洁地说:

for (float weightDecimal = .01; weightDecimal <= 10; weightDecimal += 0.01)

在 Objective C 中:x += yx = x + y.

尽管您经常看到带有orfor的循环,但您可以使用任何表达式。something++something--

于 2012-08-01T01:21:21.943 回答