【发布时间】:2014-03-10 02:42:10
【问题描述】:
我有点困惑。假设我有一个名为 myView 的 UIView,我们有以下代码块:
[myView setTransform:CGAffineTransformMakeScale(2.0f, 2.0f)];
[myView setTransform:CGAffineTransformMakeScale(0.5f, 0.5f)];
现在,如果我查看这段代码,我会假设这会使 UIView 的大小保持不变。然而,它实际上是原来的一半!似乎 UIView 对它们的原始大小有某种“记忆”。它是否正确?这似乎也是 Apple 做出的一个非常奇怪的选择,我希望有人能告诉我到底发生了什么以及为什么会这样。
谢谢!
【问题讨论】:
-
setTransform 替换当前变换。如果您想对当前变换应用变换,请使用名称中不带“Make”的函数变体。
-
啊,这很有帮助!谢谢!
标签: ios objective-c uiview core-graphics transformation