如果我理解正确,使用CGAffineTransform
缩放UIView
将锚点设置为其中心。
具体来说:
self.frame = CGRectMake(0,0,100,100);
self.transform = CGAffineTransformMakeScale(2, 2);
NSLog(@"%f;%f;%f;%f", self.frame.origin.x, self.frame.origin.y, self.frame.size.width, self.frame.size.height);
输出:
-50;-50;200;200
如何创建一个 CGAffineTransform 缩放,使用特定的锚点(比如说 0;0)?
layer
上使用CATransform3D
可以正确地表现并遵守anchorPoint
。尝试使用它来替代CGAffineTransformMakeScale
,后者会将视图限制在窗口的顶部和左侧边界。 - Jonathan Lin