2014-04-02 46 views
0

我需要在標籤淡出後更改標籤「chainsLabel」的文本。但是,看來我不能這樣做,因爲showChainNumber是一個類方法。那麼我怎樣才能避免這個問題呢?Cocos2d:如何在CCSequence中執行選擇器(更改標籤)

感謝您的任何建議!

代碼如下:

+ (void)showChainNumber{ 
    id action = [CCFadeOut actionWithDuration:0.5f]; // fading out 
    id change = [CCCallFunc actionWithTarget:self selector: @selector(changeText:)]; 
    [chainsLabel runAction:[CCSequence actions:action,change, nil]]; 
} 

- (void)changeText:(id)sender{ 
    [chainsLabel setString:@""]; 
} 
+0

cocos2d的哪個版本? – Kreiri

+1

爲什麼是類方法?它可能不應該。你也忽略了提到實​​際問題是什麼(「看起來我不能」不是問題描述 - 爲什麼你覺得這樣?你會得到任何編譯器警告/錯誤或運行時問題嗎?)。 – LearnCocos2D

+0

我設置它是一個類方法,因爲我需要在ContactListener中調用此方法。我確實得到錯誤,程序剛剛崩潰。 – alanlzl

回答

0

我發現下面的代碼可以工作,只是爲別人誰擁有了同樣的問題:

id action = [CCFadeOut actionWithDuration:0.5f]; // fading out 
    id change = [CCCallBlock actionWithBlock:^{[GameLayerChainMode changeText];}]; 
    [chainsLabel runAction:[CCSequence actions:action,change, nil]]; 
1
first change textLabel then fade out 

try this 
[chainsLabel runAction:[CCSequence actions:change,action, nil]]; 
相關問題