0

ラベル文字列を削除する方法がわかりません。次のボタンを押してラベルを削除し、次のラベルを追加します(戻るボタンも同じです)。次/戻るボタンを押すと開始するメソッドは次のとおりです。

-(void)showStoryContentWithIndex:(int)index
{
    [self removeChild:card cleanup:YES];

    NSString* plistPath = [[NSBundle mainBundle] pathForResource:@"Names" ofType:@"plist"];
    NSArray* contentArray = [NSArray arrayWithContentsOfFile:plistPath];

    CCLabelTTF *truckName = [CCLabelTTF labelWithString:[contentArray objectAtIndex:currentIndexSelected]  fontName:CUSTOM_FONT_NAME fontSize:80];

    truckName.position = ccp(500, 220);
    [self addChild:TName];

    NSString * cardSpriteName = [NSString stringWithFormat:@"%d.png",currentIndexSelected];
    card = [CCSprite spriteWithSpriteFrameName:cardSpriteName];
    [card setPosition:ccp (500,500)];
    [card setOpacity:255];
    [self addChild:card z:4];
}

そこで、ラベルを削除する方法を実装する必要があります。removeChildを使用しようとしましたが、何も表示されませんでした。

読んでくれてありがとう!

4

1 に答える 1

0

次のラベルと前のラベルの iVar を保持し、それらを削除する代わりに、

// in .h

CCLabelTTF *_nextLabel, *_previousLabel;

// somewhere in init 

_nextLabel = [CCLabelTTF ...];
[self addChild:_nextLabel]              
_previousLabel = [CCLabelTTF ...];
[self addChild:_previousLabel]              


// and finally, when you update 

[_nextLabel setString:@"new next"];
[_previousLabel setString:@"new previous"];

編集 :

NSString* newNext = [dic objectForKey:@"keyForNext"];
[_nextLabel setString:newNext];
于 2013-03-18T12:59:43.110 に答える