我正在开发一个 iPhone 应用程序,在我的应用程序中有一个从屏幕顶部移动到底部的对象。为此,我使用 CADisplay 链接。一旦对象离开屏幕,它就应该重新开始它的路线。我遇到的问题是,每次对象重新启动其路线时,它都会加速。这种情况一直持续到物体运动得如此之快以至于你几乎看不到它。任何想法为什么会发生这种情况以及如何阻止它?任何帮助表示赞赏,在此先感谢!
-(void)spawnButton{
int x = (arc4random() % (240) + 40;
int y = -100;
button1.center = CGPointMake(x,y);
displayLink = [CADisplayLink displayLinkWithTarget:self selector:@selector(moveObject)];
[displayLink addToRunLoop:[NSRunLoop currentRunLoop] forMode:NSRunLoopCommonModes];
}
-(void) moveObject {
int z = 1;
button1.center = CGPointMake(button1.center.x , button1.center.y +z);
if (button1.center.y >= 480) {
[self spawnButton];
}
}