1

我在使用 CCEase* 操作包装器时遇到了一些问题。我可以运行一个没有缓动的动作并且它按预期执行,但是当我添加缓动时,动画不会运行,它只是在延迟后“弹出”到动作结束。

我可以使用 [CCMoveTo actionWithDuration:duration position:position] 效果很好,但是当我尝试添加缓动时,它会导致问题。

我尝试了各种缓动功能,只运行一个动作,或者运行一个对内部动作进行缓动的序列,但都不起作用

[CCEaseOut actionWithAction:[CCMoveTo actionWithDuration:duration position:position]]对我不起作用。

它们在我的应用程序的其他部分为我工作,但并非无处不在。我没有做任何明显不同的事情,所以我很茫然。

有没有人有过这方面的经验?任何帮助,将不胜感激!

4

2 回答 2

1

试试这样可能会奏效

id action = [CCMoveTo actionWithDuration:2 position:ccp(100,100)];
id ease = [CCEaseOut actionWithAction:action rate:2];
[sprite runAction: ease];
于 2013-08-29T11:57:18.957 回答
1

您必须指定rateeasing 动作才能使其工作,否则该动作将按照您的描述弹出。

将类方法的签名CCEaseRateAction视为您尝试使用的一些缓动操作从它继承。使用actionWithAction:rate:方法(或初始化...)

于 2013-08-29T14:00:04.430 回答