我在每个选项卡视图控制器中放置了一些子视图。 现在,我使用像素计数对其进行调整大小,但仅适用于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
),则可以使用父视图的框架和自动调整大小的组合。示例代码(例如,在 -(void)viewDidLoad
中执行此操作):
UIView *view = [[UIView alloc] initWithFrame:self.view.bounds];
view.autoresizingMask = UIViewAutoresizingFlexibleWidth | UIViewAutoresizingFlexibleHeight;
[self.view addSubview:view];
self.view
相同大小的自定义视图吗?你不能只使用 self.view
吗? - Lukas Kukacka__MY_STATIC_CDVViewController.view.frame = self.view.bounds; __MY_STATIC_CDVViewController.view.autoresizingMask = UIViewAutoresizingFlexibleWidth | UIViewAutoresizingFlexibleHeight
,不要添加 view
,它是无用的。 - Lukas KukackaUINavigationController
的根视图控制器。 - Lukas Kukacka[childView setFrame:childView.superview.bounds];
您的视图控制器中的主视图应该已经是屏幕上可用空间的大小。通常,如果您想让一个视图与其父视图相同大小,可以使用 view.frame = view.superview.frame
,但我怀疑在调用视图控制器的视图上这样做可能不是一个好主意。