如何在控制器的根视图中获取按钮的框架

时间:2014-03-05 03:50:06

标签: ios frame

在我的视图控制器中,我添加了一个容器视图作为根视图的子视图。之后,我创建一个按钮作为容器的子视图。我想在根视图中获取按钮的框架。但是当我使用button.frame时,我得到了与容器相关的按钮框架。那么,有人可以告诉我如何让按钮的正确框架与控制器的根视图相关吗?

谢谢,等待你的帮助。

1 个答案:

答案 0 :(得分:2)

您正在寻找的方法是-[UIView convertRect:fromView:]。你可以这样做:

CGRect frameInRootView = [self.view convertRect:button.frame fromView:self.containerView]

也有一些相关的功能。您还可以将转换为视图。使用convertRect:toView:方法,您可以从按钮的边界转到目标视图,例如:

CGRect frameInRootView = [button convertRect:button.bounds toView:self.view]

-[UIView convertRect:fromView:]将输入rect从接收器的坐标系转换为fromView参数到接收器的坐标系。 -[UIView convertRect:toView:]走另一个方向。