这个很棘手!
我有 View A 和 View B,它是 View A 的 subview 。这两个 View 的框架是不变的。
我通过改变变换矩阵来旋转 View A:
viewA.transform = CGAffineTransformMakeRotation(angle);
现在我想调整 View B 的变换矩阵,以便视觉位置和旋转保持不变,即 B 在改变 A 的旋转角度时不能移动/旋转。
显然,我需要以相反的方向旋转 View B,但这还不够。
我试过了,但 B 仍然摇摆不定:
viewB.transform = CGAffineTransformTranslate(CGAffineTransformMakeRotation(-angle), viewA.bounds.size.width, viewA.bounds.size.height);
也许正确的矩阵还取决于 viewB 的框架......也许我需要使用正弦和余弦......?
我知道,我可以简单地将 B 设为 A 的兄弟 View ,但我不想这样做。
最佳答案
你好,试试这个,请告诉我
viewB.transform=CGAffineTransformInvert(viewA.transform)
关于iphone - 旋转父 View 后计算 CGAffineTransform 矩阵,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10501273/