Tyring для анимации UIView путем изменения его высоты и положения. Первая анимация прыгает? У меня размер UIView (theView), установленный в Storyboards, должен быть высотой 216. Таким образом, приложение загружается и отображается экран. Я нажимаю theView, и он быстро перескакивает в высоту до 200 + пикселей, а затем оживляет, как следует?Анимация UIView размер скачков
- (void)singleTapAction:(UIGestureRecognizer *)singleTap {
UIView *view = singleTap.view;
[UIView animateWithDuration:1.2 delay:0 options:UIViewAnimationCurveLinear | UIViewAnimationOptionAllowUserInteraction animations:^{
CGRect theFrame = self.theView.frame;
theFrame.size.height += 100.f; <!-- when it hits here the view jumps then animates
self.theView.frame = theFrame;
}
completion:^(BOOL finished) {
if(finished){
[UIView animateWithDuration:1.2 delay:0 options:UIViewAnimationCurveLinear | UIViewAnimationOptionAllowUserInteraction animations:^{
CGRect theFrame = self.theView.frame;
theFrame.origin.y -= 100.f;
self.theView.frame = theFrame;
}
completion:^(BOOL finished) {
NSLog(@"animations complete");
}];
}
}];
}
Не забудьте понять ваш вопрос. Просто нет, кстати, у вас есть опция «auto reverse» в UIView :: animate. – Vinzius
@Vinzius вы правы. – jdog