Я работаю над 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];
}
}