gpt4 book ai didi

ios - 获取正在旋转的 View 内的 subview 框架(CGAffineTransform)

转载 作者:可可西里 更新时间:2023-11-01 02:00:44 24 4
gpt4 key购买 nike

我有一个类似的问题,这里提出了解决方案: https://stackoverflow.com/a/16511494/3134192

我有一个包含内部 View 的外部 View 。外部 View 使用 CGAffineTransform 旋转(持续的、无尽的动画)。我想计算相对于旋转的外部 View 的内部 View 的框架(-> 实际显示的内部 View 的框架,因为它与外部 View 一起旋转)。

我不太了解 UIKit 的这些 convert() 方法。我从来不知道它是从哪个坐标系转换过来的。此外,问题的解决方案对我不起作用,它给了我一个不正确的框架。

我将不胜感激任何帮助。谢谢!

最佳答案

听起来你的情况是这样的:

enter image description here

根据定义,innerView 的框架“相对于外部 View ”是不变的,因为它的框架是在其父 View 的坐标空间中指定的。所以也许您正在寻找它相对于封闭的 rootView 的框架。这是一个有趣的问题,因为它不再是轴对齐的,因此在某种意义上是“未定义的”。 (请参阅有关非身份 transform 的 UIView 的 frame 属性的文档。)

如果你在这个非轴对齐的矩形上运行 innerView.convert (innerView.frame, to: rootView),我实际上不确定你会得到什么。也许是这样的:

enter image description here

但是,您可以像这样轻松地请求 innerView 相对于 rootView 的左上角或中心:innerView.convert (innerView.frame.origin, to: rootView) .

关于ios - 获取正在旋转的 View 内的 subview 框架(CGAffineTransform),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46551420/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com