UIViews和CGAffineTransformMakeScale

时间:2014-03-10 02:42:11

标签: ios objective-c uiview core-graphics transformation

我有点困惑。假设我有一个名为UIView的{​​{1}},我们有以下代码块:

myView

现在,如果我查看这段代码,我会认为这会使UIView的大小保持不变。然而,它实际上使它成为原始尺寸的一半!似乎UIViews对它们的原始大小有某种“记忆”。它是否正确?这似乎也是苹果公司做出的一个非常奇怪的选择,我希望有人可以告诉我究竟发生了什么以及为什么会这样。

谢谢!

1 个答案:

答案 0 :(得分:2)

UIView的{​​{1}}属性是frame 坐标空间中的边界矩形。

另一方面,它的superview属性是视图的拥有坐标空间中的边界矩形。

因此,视图大小的减半将在其bounds中看到(因为它的大小在其超视图中减半)但在frame.size中没有(因为视图本身仍然具有相同的视图)尺寸)。