NSTimer运动不规则

时间:2014-04-18 14:02:10

标签: ios objective-c nstimer

我正在尝试在目标c中制作游戏动画动画,这样当按下某个按钮时,某些按钮会在屏幕上移动。虽然我正在使用的NSTimer的调用是不规则的并且我得到了滞后的动作,但这样工作正常。这是在iOS 6中,所以我不会使用精灵套件,因为它不可用

非常感谢有关如何使其成为常规电话或使其成为流畅动画的任何建议

提前致谢

以下是代码:

-(void) click {
    if (!self.animating) {
        self.animating = YES;
        timer = [NSTimer scheduledTimerWithTimeInterval:0.01
                                         target:self
                                       selector:@selector(move)
                                       userInfo:nil
                                        repeats:YES];
    }
}

- (void) cancelClick {
    self.animating = NO;
    [timer invalidate];
}

-(void) move {
    CGPoint origin = self.target.frame.origin;
    if ([self.direction isEqual:@"left"]) {
        origin.x -= self.magnitude;
    } else if ([self.direction isEqual:@"right"]) {
        origin.x += _magnitude;
    } else if ([self.direction isEqual:@"up"]) {
        origin.y -= _magnitude;
    } else {
        origin.y += _magnitude;
    }
    [self.target move:0 toPoint:origin animated:YES delay:0 animationOptions:UIViewAnimationOptionCurveLinear];
}

0 个答案:

没有答案