0

プレーヤーがオブジェクトに触れたときにスコアを受け取るための次のコードがあります。

- (void)  match:(GKMatch *)match
 didReceiveData:(NSData *)data
     fromPlayer:(NSString *)playerID{



    NSString *incomingDataAsString =
    [[NSString alloc] initWithData:data
                          encoding:NSUTF8StringEncoding];

    NSString *existingText = score.text;

    NSString *finalText =
    [existingText stringByAppendingFormat:@"Pasc = %@",
     incomingDataAsString];

    [self.score setText:finalText];

    [incomingDataAsString release];

}

しかし、結果として、私のスコアは次のように表示されます。「Pasc = 123456」、どのように表示させることができますか、1桁増加します。(番号1を2に、2を3に置き換えます。

ありがとう。

4

3 に答える 3

1

スコアがのnumberようなものである場合NSIntegerは、それを扱い、オブジェクトにする必要がNSIntegerある場合は、それが何であるか、またはとして保存します。そして、それを表示目的のみに 変換します。NSNumber
NSString

于 2012-11-10T04:22:12.187 に答える
1

次のことを試してください。お役に立てば幸いです。

   NSRange range = NSMakeRange(0, [incomingDataAsString length]); // 0 is -->x<-- position 0
    NSString *finalText = [existingText stringByReplacingCharactersInRange:range withString:[NSString stringWithFormat:@"%@",incomingDataAsString];

    [self.score setText:finalText];

このようにできることを忘れてしまいました。「Pasc="を削除し、@"%@ "のみを考慮して、

[self.score setText:incomingDataAsString];  

フィードバックをお願いします。何が起こっているのか理解できたら、コードを編集してお手伝いします:)、ありがとうございます。

于 2012-11-10T04:29:03.937 に答える
0

self.score.text = [NSString stringWithFormat:@"Pasc = %@", incomingDataAsString];

于 2012-11-10T12:29:59.467 に答える