0

ユーザーの回答を確認し、スコア (5 点満点) を出力するために使用したい次のコードがあります。回答を含む plist を使用し、それに対して textField.text をチェックします。私が苦労しているのは、この方法を使用して合計として出力スコアを取得する方法ですか?

- (IBAction)checkAnswers:(UITextField *)textField
{
NSString *path2 = [[NSBundle mainBundle] pathForResource:@"7A Cells Microscopes 3" ofType:@"plist"];
NSDictionary *dictionary = [[NSDictionary alloc] initWithContentsOfFile:path2];

NSString *tester = [NSString stringWithFormat:@"%i", textField.tag];

//   NSDictionary *secondDict = [dictionary valueForKey:tester];

//  NSString *answer = [secondDict valueForKey:@"Answer"];

// if ([textField.text isEqualToString:[[dictionary valueForKey:tester] valueForKey:@"Answer"]]) {
//      NSLog(@"YAY");
//  }

NSArray *allTextFields = [[NSArray alloc] initWithObjects:eyepiece, objectiveLens, focussingKnobs, stage, mirror, nil];


for (textField in allTextFields) {
                int x = 0;

    if ([textField.text isEqualToString:[[dictionary valueForKey:tester] valueForKey:@"Answer"]]) {
        x++;
        NSLog(@"%i", x);
    }

}

どんな助けでも大歓迎です!どうもありがとう。

4

1 に答える 1

3

コードの残りの部分が適切であると仮定すると、int x = 0;を移動するだけです。for ループの外側。x をコーディングした方法は、ループごとに 0 にリセットされるため、カウントされません。

于 2012-04-16T20:34:24.843 に答える