苹果手机。如何获取父视图的矩形?

时间:2010-06-11 16:43:55

标签: iphone layout uiviewcontroller

我的应用程序创建了两个视图:

  • topView(CGRect = 0,0,320,60)
  • bottomView(CGRect = 0,60,320,480)

底部视图使用UIViewControllers创建UITabBarController:

  • ListViewController
  • 等...

ListViewController具有在viewDidLoad方法中创建的自己的视图:

background = [[UIImageView alloc] initWithFrame: rect ];

所以我的问题是如何在ListViewController中获取bottomView rect? 我想布局所有控制器视图而不与topView交叉。

谢谢。

1 个答案:

答案 0 :(得分:3)

我建议你阅读HIG。花很多时间在那里,因为它会回答你的问题显示你还没有掌握的许多设计问题。如果你不能用标准的控制和位置来解决问题,你可能会采取错误的方式。

话虽如此,您在帖子内容中的问题似乎与标题不同。如果您只想要父视图的矩形,请使用:

CGRect parentRect = [[[self view] superview] frame];
在视图控制器中

当你说ListViewController时,这是你自己创建的一个视图控制器,你从某个库得到的那个,或者你的意思是UITableViewController?

如果您可以使用Interface Builder,我建议您不要使用代码布局控件。这并不总是可行的,但是当它使用IB时,这是一个很好的做法。