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