0

ラベル テキストでアニメーションを実行したいと思います。ラベルに 10 を表示する必要があります。ラベルは、最初に 0 で始まり、次に 1、2、3....最後に 10 と表示されます。

例:ディスプレイ番号のアニメーションを表示するのは、スロット ホイールのようです。

どうすればそれを達成できますか?cocos 2dのトリックですか?

誰もそれを行う方法の手がかりを持っていますか?

4

1 に答える 1

0

最初にラベルをインスタンス変数として設定します。

// In your .h
CCTabelTTF *_myLabeL;

次に(すでにプロジェクトに追加していると仮定して)その更新メソッドを作成します

- (void)updateLabel {
    int currentVal = [_myLabel intValue];
    NSString *newString;

    currentVal += 1;
    newString = [NSString stringWithFormat:@"%i", currentVal];

    [_myLabel setString:newString];
}

これで、更新を呼び出すメソッドを作成できます。

- (void)startUpdatingLabel:(int)newValue {
    int curVal = [_myLabel intValue];
    int difference = newValue-curVal;
    for(int i=0; i > difference; i++) {
        [self performSelector:@select(updateLabel) withObject:nil afterDelay:1.0];
    }
}

次に、ラベルを更新したいときはいつでも(たとえば10に)する必要があるのは、呼び出すことだけです

[self startUpdatingLabel:10];

新しい値に達するまで、1秒ごとにラベルを1つずつ更新します

于 2013-03-03T17:36:51.443 に答える