多个动画块无法正常工作

时间:2012-04-06 19:14:10

标签: ios animation cgaffinetransform

我正在尝试在同一个块中翻译和缩放视图。出于某种原因,翻译代码超出了缩放比例并将其设置为100%。请帮忙。

[UIView animateWithDuration:0.5 
                        delay:0.0 
                        options:UIViewAnimationCurveEaseInOut
                     animations:^{                              
                         fullView.transform = CGAffineTransformMakeTranslation(0.0, 425.0);
                         fullView.transform = CGAffineTransformMakeScale(0.8, 0.8); 
                     } completion:^(BOOL finished) { }];

SOLUTION - 使用CGAffineTransformConcat将2个变换行更改为一个:

fullView.transform = CGAffineTransformConcat(CGAffineTransformMakeTranslation(0.0, 425.0), CGAffineTransformMakeScale(0.8, 0.8));

1 个答案:

答案 0 :(得分:1)

transform是您正在设置然后重新设置的属性。你需要做的是构造一个CGAffineTransform,它由两个变换的组合组成。 CGAffineTransformConcat()应该很好地帮助你。