gpt4 book ai didi

ios - ViewController 遏制 - 子 ViewController 在景观中未正确调整大小

转载 作者:行者123 更新时间:2023-11-29 02:56:19 26 4
gpt4 key购买 nike

应用设置为仅支持横屏模式。

自定义 UIViewController 具有以下代码:

- (void)viewDidLoad {
[super viewDidLoad];

MBMainViewController *mainViewController = [self.storyboard instantiateViewControllerWithIdentifier:@"MBMainViewController"];

[self addChildViewController:mainViewController];
[self.view addSubview:mainViewController.view];
[mainViewController didMoveToParentViewController:self];

self.mainViewController = mainViewController;
}

启动应用程序时, subview Controller (mainViewController) 的 View 框架仍设置为纵向尺寸。

我是否遗漏了一些东西,所以在 subview Controller 的 View 上设置了正确的框架大小?

最佳答案

这显然只发生在从 Storyboard实例化的 UIViewController 上。在这种情况下,它只有在我们设置属于 subview Controller 的 View 的 autoresizingMask 时才有效:

- (void)viewDidLoad {
[super viewDidLoad];

MBMainViewController *mainViewController = [self.storyboard instantiateViewControllerWithIdentifier:@"MBMainViewController"];

// Set the autoresizingMask as a fix
mainViewController.view.autoresizingMask = UIViewAutoResizingFlexibleWidth | UIViewAutoResizingFlexibleHeight;


[self addChildViewController:mainViewController];
[self.view addSubview:mainViewController.view];
[mainViewController didMoveToParentViewController:self];

self.mainViewController = mainViewController;
}

我的猜测是,当您从 Storyboard 中实例化 View Controller 时,已经设置了约束,或者它没有提供正确的 autoresizingMask 值。

关于ios - ViewController 遏制 - 子 ViewController 在景观中未正确调整大小,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23869250/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com