как добавить анимацию справа налево и увеличить анимацию с помощью CGAffineTransformScale

#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.
         }];
       }
 }];
  

Я надеюсь, что это сработает.

Приветствия.