#ios #caanimation
#iOS #caanimation
Вопрос:
Я новичок в core graphics, я хочу показать анимацию справа налево с помощью CGAffineTransformScale после завершения этой анимации я применил анимацию масштабирования к тому же виду.
Я могу показать анимацию справа налево. Но я не могу показать анимацию масштабирования.
Может ли кто-нибудь помочь мне решить вышеуказанную проблему.
Пожалуйста, найдите приведенный ниже код, который я пробовал.
toView.layer.anchorPoint = CGPointMake(1, 0.5);
toView.center = CGPointMake(toViewController.view.bounds.size.width,toViewController.view.bounds.size.height/2.0);
toView.transform = CGAffineTransformScale(CGAffineTransformIdentity, -1.0, 1.0);
[UIView animateWithDuration:ANIMATION_DURATION delay: 0.0 options: UIViewAnimationOptionTransitionFlipFromLeft animations:^{
[toView setTransform: CGAffineTransformMakeScale(1.0, 1.0)];
} completion:^(BOOL finished) {
}];
Ответ №1:
Ваши значения масштаба являются 1.0
значением по умолчанию, измените его на любое другое значение, отличное от 1.0
, может быть 1.2
для увеличения или 0.8
уменьшения масштаба.
И я думаю, что в вашем блоке анимации должно быть несколько дополнений.
[UIView animateWithDuration:ANIMATION_DURATION delay: 0.0 options: UIViewAnimationOptionTransitionFlipFromLeft animations:^{
[toView setTransform: CGAffineTransformMakeScale(1.2, 1.2)]; //Zoom in
} completion:^(BOOL finished) {
if(finished){
[UIView animateWithDuration:ANIMATION_DURATION animations:^{
toView.transform=CGAffineTransformIdentity; //Make things normal.
}];
}
}];
Я надеюсь, что это сработает.
Приветствия.