我正在制作一个简单的应用程序,其中实心圆圈在屏幕上弹跳。现在,圆圈的速度是固定的,但我希望它们随机加速或减速。
我最初尝试使用 NSTimer,但我发现无法将时间间隔设置为不规则的。根据 Apple 的文档,对于 NSAnimation 类,“与 NSTimer 不同,动画通知可以不规则的间隔发生,允许您创建看起来加速或减速的动画。”
所以看来我应该使用 NSAnimation 类。但是,当我查看 NSAnimation 中的绘图过程时,它似乎笨重且有限。我想制作几个圆圈并为它们的行为定义参数,所以我更喜欢使用更简单的框架,例如 cocos2d-iphone。
可以用cocos2d的调度器做不规则的间隔吗?还是我必须使用 NSAnimation?
cocos2d 调度器如下所示:
-(id) init
{
if( ! [super init] )
return nil;
// schedule timer
[self schedule: @selector(tick:)];
[self schedule: @selector(tick2:) interval:0.5];
return self;
}
-(void) tick: (ccTime) dt
{
// bla bla bla
}
-(void) tick2: (ccTime) dt
{
// bla bla bla
}