【发布时间】:2017-08-21 17:43:17
【问题描述】:
我正在构建一个自定义 UIView,您可以旋转和调整其大小。我可以通过拖动UIView 的角来调整UIView 的大小。我计算我拖了多少,然后相应地更改UIView 的框架。
但是,一旦我将旋转手势识别器添加到视图中,我就会遇到问题。如果我对视图进行旋转或应用变换,我将不再知道如何计算拖动距离和更改视图的框架。当事物以一个附加的角度放置或它们有一些其他变换(如平移变换)时,我如何计算我的新视图和原始视图之间的宽度和高度变化?
我想到了将视图的变换设置回.identity,更改视图的大小,然后重新应用其变换的可能性,但我不确定如何实际实现这一点。
【问题讨论】:
-
您根本不应该使用框架。如果有变换,框架就没有意义了。
-
您应该在超级视图中处理手势。这将允许您将适当的转换作为增量应用到视图,并使计算更加容易。
标签: ios swift uiviewanimation