【问题标题】:How to animate a CCSprite outside of the class?如何在课堂之外为 CCSprite 设置动画?
【发布时间】:2013-03-23 02:24:02
【问题描述】:

我在 ClassA 中有实例变量 Cc Sprite *someSprite。 B类有实例变量

A 类 *A 类。我想为 B 类中的一些 Sprite 制作动画。我知道我可以合成

并使用像classA这样的点符号来访问它。 someSprite,但我想对其进行动画处理

使用 CCAnimation。 Is there anyway to do this?

【问题讨论】:

  • 在不知道细节的情况下使用 Cocos2d 的 getChildByTag 来访问任何 sprite 以应用 CCAnimation。所以: 1) 添加精灵并应用标签 kSomeSpriteTag 值 2) 访问精灵 CCSprite *someSprite = (CCSprite *)[self getChildByTag:kSomeSpriteTag]; 3) 在其上应用 CCAnimation

标签: iphone objective-c ipad cocos2d-iphone


【解决方案1】:

您可以只使用点符号,然后为该精灵运行一个动作:

[classA.someSprite runAction:[CCMoveBy actionWithDuration:1.0 position:ccp(100, 100)]]

【讨论】:

  • 是否可以创建一个只读属性,但我可以使用动画运行它?我不想让 someSprite 成为 setter,因为它会干扰一些内部代码。
  • @YvesLeBorg 是正确的。在这种情况下,您只是在读取 someSprite 的值。没有将其设置为任何内容。 classA.someSprite 等同于 [classA getSomeSprite]
  • NVM,我不敢相信我读错了答案。我精力不足!谢谢大家的回答!
猜你喜欢
  • 1970-01-01
  • 2014-03-05
  • 1970-01-01
  • 1970-01-01
  • 2019-05-06
  • 2019-10-22
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多