我在插入同一精灵的多个子项并访问它(或在运行时为它们设置位置)时遇到问题。请提醒任何合适的方法,最好指出我的错误。这是我的方法。添加和访问CCSprites
//In the Init Method...
//int i is defined in the start.
for (i = 1; i < 4; i++)
{
hurdle = [CCSprite spriteWithFile:@"hurdle1.png"];
[self addChild:hurdle z:i tag:i];
hurdle.position = CGPointMake(150 * i, 0);
}
它将所有的精灵分布在画布上。然后在一些“更新函数”中,我打电话给这个。
hurdle.position = CGPointMake(hurdle.position.x - 5, 10);
if (hurdle.position.x <= -5) {
hurdle.position = ccp(480, 10);
}
它的工作原理,但正如所料,只有一个实例水平移动。我希望所有的情况下被移动,所以我试图用这个....
for (i = 1; i < 4; i++){
[hurdle getChildByTag:i].position = CGPointMake(hurdle.position.x - 5, 10);
//OR
[hurdle getChildByTag:i].position = CGPointMake([hurdle getChildByTag:i].position.x - 5, 10);
}
我试图让各种场所登录并意识到getChildByTag不工作我想的方式用它。
我应该声明enumHurdle作为一类? CCSprite? – 2012-01-18 06:35:20
@ToughGuy这是正确的。谢谢,我会编辑它。 – 2012-01-18 06:44:48
非常感谢您的帮助。但是现在我对加入更多精灵毫无头绪,但是想要避免共享相同的标签:D – 2012-01-18 07:05:34