我有一个简单的动画,可以上下移动 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];
}
我发现它向下移动的幅度是向上移动的两倍 - 我不明白......
所以当我写这个时 - 它工作正常 - 无论出于何种原因......
if (up)
movementDistance = 120;
else {
movementDistance =60;
}