2013-07-14 40 views
0

對不起,這傢伙正在毆打它。我如何知道CCSprite是否具有給定的字符串值spriteWithSpriteFrameName我如何才能找到CCSprites NSString值

+0

你想得到當前精靈幀名稱的名稱,或者只是想知道精靈是否是用精靈幀創建的? – Bivis

+0

@Bivis:我創造了很多精靈。我只想檢查一個創建的精靈是否具有某個字符串值的圖像。例如,像這樣'if(sprite.string = @「image.png」)' – IMustCode

回答

1

我認爲你唯一的選擇是一樣的東西:

CCTexture2D *tex = [[CCTextureCache sharedTextureCache] textureForKey:@"image.png"]; 
if (tex && tex==sprite.texture) { 
    // do your thing ... make certain you understand the 
    // key semantics in cocos2d , re texture atlas 
} 

至於我自己,每當得到一個新的「cocos2d的」版本,我係統地添加到CCNode一的NSString * name屬性,這是我使用的各種目的,其中之一與您正在嘗試做的事情類似。

+0

我試過一個簡單的例子來記錄一個我知道滿足的情況。但它不會打印到控制檯。 'CCTexture2D * tex = [[CCTextureCache sharedTextureCache] textureForKey:@「redBall.png」]; ''if(tex && tex == redBallSprite.texture){''CCLOG(@「it's working」); }' – IMustCode

+0

你上面提供的代碼檢查一個精靈是否在給定的紋理中。我真正想要的是如何找到紋理中的單個'CCSprite'是否具有特定的'NSString'值。 – IMustCode