UIView を上下に動かす簡単なアニメーションがあります。
正しく上に移動しますが、下に移動すると、下に移動しすぎます。
上と同じ距離だけ下に移動しないのはなぜですか?
- (void) animateInputViewUp: (BOOL) up
{
const int movementDistance = 120;
const float movementDuration = 0.4f;
int movement = (up ? -movementDistance : movementDistance);
[UIView beginAnimations: @"anim" context: nil];
[UIView setAnimationBeginsFromCurrentState: YES];
[UIView setAnimationDuration: movementDuration];
self.myInputView.frame = CGRectOffset(self.myInputView.frame, 0, movement);
[UIView commitAnimations];
}
私はそれが上に比べて2倍下に動くことを知りました - 私は理解していません.....
だから私がこれを書くとき - それは正しく動作します - 何らかの理由で...
if (up)
movementDistance = 120;
else {
movementDistance =60;
}