我在循环中添加CCMenuItems,然后在屏幕上使用EaseIn移动到CCMenu中。有没有办法单独移动每个CCMenuItem?
CGSize winSize = [[CCDirector sharedDirector] winSize];
CCMenu *chapterMenu = [CCMenu menuWithItems: nil];
for(int i =1; i<=5; i++){
CCMenuItem *chapter = [CCMenuItemSprite itemFromNormalSprite:[CCSprite spriteWithFile:@"sprite.png" rect:CGRectMake(0, 0, 150, 210) selectedSprite:nil disabledSprite:nil target:self selector:@selector(OnPlay:)];
chapter.tag = i;
[chapterMenu addChild:chapter];
}
[chapterMenu alignItemsHorizontallyWithPadding:40];
chapterMenu.position = ccp(chapterMenu.position.x, chapterMenu.position.y + winSize.height);
id action = [CCMoveBy actionWithDuration:0.5f position:ccp(0, -winSize.height)];
id ease = [CCEaseIn actionWithAction:action rate:1.5f];
[chapterMenu runAction:ease];
[self addChild:chapterMenu];发布于 2012-10-23 13:06:56
您可以在单个菜单项上运行操作,因为它们只是CCNode的子类。
只需记住,它们的位置将相对于CCMenu,而不是您的场景。
https://stackoverflow.com/questions/13022841
复制相似问题