我有一些子视图,我放在每个标签栏的视图控制器中。现在我用像素计数来调整它的尺寸,但它只适用于iPhone 4和4s而不是iPhone 5,因为屏幕尺寸较长。我可以检查设备,然后按照这种方式调整大小,但我觉得必须有一种更简单的方法来做到这一点。
viewController1.view.frame = CGRectMake(0, 0, 320, 460);
我将子视图染成黄色,因此更容易看到。
答案 0 :(得分:7)
UITabBar
负责正确调整子视图控制器框架的大小。self.view
)自动调整大小,则可以使用superview
的组合框架和自动调整。示例代码(您可以在- (void)viewDidLoad
中执行此操作):
UIView *view = [[UIView alloc] initWithFrame:self.view.bounds];
view.autoresizingMask = UIViewAutoresizingFlexibleWidth | UIViewAutoresizingFlexibleHeight;
[self.view addSubview:view];
答案 1 :(得分:3)
如果你想通过设置框架而不是DO这样做:
[childView setFrame:childView.superview.bounds];
答案 2 :(得分:0)
视图控制器中的主视图应该已经是sceen上可用空间的大小。通常,如果您希望视图的大小与其父级相同,则可以使用view.frame = view.superview.frame
,但我怀疑调用视图控制器的视图是个好主意。