用CGAffineTransform旋转后的UIView大小

这是我的第一个问题,所以大家好:)

我需要实现类似于页面/基调图像操作的结果。 我有uiview,我可以旋转/缩放等。 我有处理每个angular落的大小调整视图。 一切正常(缩放/旋转),但当图像旋转,我试图改变它的大小,通过移动手柄一切都出错了,或图像改变其大小不可预知或它的四处移动屏幕。

我会感谢任何方向或build议,我可以find一些类似的例子或我能做些什么。

这是一个我喜欢得到的video。 例

我自己也在处理这个问题。 我相当有信心说有没有简单的方法来做到这一点,你只需拿起笔和纸,并潜入一个相当乏味的三angular学!

首先要注意的是视图的frame属性是超出界限(即它的值是未定义的,当它应用旋转变换),所以你必须改为使用boundscenter属性。 那么你只需要根据当前angular度来计算新的边界和中心位置。 这个单调乏味的东西就知道这个bounds不再与水平和垂直轴线alignment,而center坐标当然是需要一个笔和纸。 你的计算对于每个句柄都会有很小的差别,但是你几乎可以避免复制一个句柄的代码和改变一些加/减号。

其实说实话,一旦你冒着决定去做,那也不错。 我自己的实现限制了被resize的视图的大小和宽度,这是最难的一点。 让用户期望的行为可能需要一些工作,但这是值得的。