0

私はバグを抱えています。私は私のアプリです。私のボールは非常にずさんになったり、非常に速くなったりする可能性があります。常に同じ速度でボールをセットできるのはif文ですか??

このような。

if (ball.speed < 5) {
ball.speed = 5
}

if (ball.speed > 5) {
ball.speed = 5
}

NSTimer を使用してボールを動かしています

timer = [NSTimer scheduledTimerWithTimeInterval:0.01 target:self selector:@selector(BallMovement) userInfo:nil repeats:YES];

.speed を定義するにはどうすればよいですか????

4

2 に答える 2

2
int minSpeed = ...;
int maxSpeed = ...;

if (ball.speed < minSpeed) {
    ball.speed = minSpeed;
} 
else if (ball.speed > maxSpeed) {
    ball.speed = maxSpeed;
}

ところで、上記の疑似コードは 1 行に相当します。

ball.speed = 5; 

;)

于 2013-11-09T22:25:49.407 に答える
1

ボールが の場合、UIImageView' ' という名前のプロパティがないため、コードでspeed使用できません。ball.speedこのようなものを使用してアニメーションを実行できます

UIImageView *imageView = [[UIImageView alloc] initWithImage:[UIImage imageNamed:@"ball.png"]];
CATransition *transition = [CATransition animation];
transition.duration = 10.0f;
transition.type = kCATransitionMoveIn;
transition.timingFunction = [CAMediaTimingFunction functionWithName:kCAMediaTimingFunctionEaseInEaseOut];
[imageView.layer addAnimation:transition forKey:nil];
于 2013-11-10T12:09:01.707 に答える