2014-03-05 12 views
1

在我的視圖控制器中,我添加了一個容器視圖作爲根視圖的子視圖。之後,我創建一個按鈕作爲容器的子視圖。我想在根視圖中獲取按鈕的框架。但是當我使用button.frame時,我得到了與容器相關的按鈕框架。那麼,有人能告訴我如何獲得與控制器根視圖相關的按鈕的正確框架嗎?如何在控制器的根視圖中獲取按鈕的框架

謝謝,等待你的幫助。

回答

1

您正在查找的方法是-[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:]走向另一個方向。

+0

謝謝,我試過了。我的按鈕真實框架的起源是{33,60},但我得到了{66,120},如何解決它? – billwang1990

相關問題