1

配列を入力しているUIPickerViewがあります。2つの列があり、最初の列を50〜500にする必要があります。2番目の列は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];
}   
}

(10ではなく1に移動するだけでよいと言ったのはわかっていますが、最初は1.01しか表示されていなかったので、10を入力しました。それで、正しく出力されるまで出力をテストするために10を入力しました。)

したがって、.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 += yはの省略形ですx = x + y

forループがよく見られますが、something++またはsomething--任意の式を使用できます。

于 2012-08-01T01:21:21.943 に答える