如何使用 CGAffineTransform Scale 从右到左添加动画和放大动画

Posted

技术标签:

【中文标题】如何使用 CGAffineTransform Scale 从右到左添加动画和放大动画【英文标题】:how to add right to left animation and zoom in animation using CGAffineTransformScale 【发布时间】:2014-07-06 13:36:50 【问题描述】:

我是核心图形的新手,我想在完成此动画后使用 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.
         ];
       
 ];

我希望它有效。

干杯。

【讨论】:

以上是关于如何使用 CGAffineTransform Scale 从右到左添加动画和放大动画的主要内容,如果未能解决你的问题,请参考以下文章

如何使用 CGAffineTransform Scale 从右到左添加动画和放大动画

如何让 CGAffineTransform Scale 围绕其中心缩小视图?

CGAffineTransform 在其他视图上

如何理解CGAffineTransform

定义 SnapKit 值时,CGAffineTransform 旋转会导致宽度和高度之间的切换

使用 CGAffineTransform 的 UIView 旋转