CGAffineTransformMakeScale

CGAffineTransformMakeScale

我面临着这个奇怪的问题,其中CGAffineTransformMakeScale导致旋转。顾名思义,它仅应引起缩放,但事实并非如此。

[UIView animateWithDuration:1.0 animations:^{
        self.logoView.transform = CGAffineTransformMakeScale(6.0, 6.0);
    } completion:^(BOOL finished) {
        if (finished) {
            [UIView animateWithDuration:3.0 animations:^{
                self.logoView.transform = CGAffineTransformMakeScale(-6.0, -6.0);
             } completion:nil];
        }
    }];


我认为视图应缩放6倍并缩小6倍。但是,第二个动画会导致图像逆时针旋转90度!谁能解释这是怎么回事?

最佳答案

使用相对比例变换而不是绝对变换。所以:

self.logoView.transform = CGAffineTransformScale(self.logoView.transform, 6, 6)

关于ios - CGAffineTransformMakeScale导致旋转,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/28380942/

10-12 14:39