我有两个标识,我希望彼此进来。
我想使用CCFadeIn和CCFadeOut。
我有Logo1,然后我想要它到CCFadeIn,然后我希望它保持2秒,然后使用CCFadeOut淡出,然后使Logo2 CCFadeIn持续1秒,停留2秒然后消失在CCFadeOut的1秒钟内。
我怎么做到这一点我不完全确定。我似乎无法找到一种方法来使CCAction触发一个方法(让我们说-finishedFadingInLogo1 :),所以我不知道该怎么做。
有什么想法吗?
答案 0 :(得分:4)
...某处:...
[logo1 runAction:
[CCSequence actions:
[CCFadeIn actionWithDuration:SOMETIME],
[CCDelayTime actionWithDuration:2],
[CCFadeOut actionWithDuration:SOMEOTHERTIME],
[CCCallFunc actionWithTarget:SOMETARGET selector:@selector(finishedFadingInLogo1)],
nil
]
];
...
-(void)finishedFadingInLogo1
{
[logo2 runAction:blah, yada, nil];
}
有意义吗?还有其他类似于CCCallFunc
的行为采取args等......
答案 1 :(得分:4)
为了更好的可读性,Colin的答案重新格式化:
id fadein = [CCFadeIn actionWithDuration:2];
id delay = [CCDelayTime actionWithDuration:2];
id fadeout = [CCFadeOut actionWithDuration:2];
id call = [CCCallFunc actionWithTarget:self selector:@selector(doneFading)];
CCSequence* sequence = [CCSequence actions:fadein, delay, fadeout, call, nil];
[aNode runAction:sequence];