我遇到了一个奇怪的问题,我在风景中呈现VC
SomeViewController * vc = [[SomeViewController alloc] init];
[self.navigationController presentViewController:vc animated:YES completion:^{
}];
在viewWillAppear
框架中的图片不正确,在viewDidAppear
中正确处于横向
但当我把它放在UINavigationController
中时SomeViewController * vc = [[SomeViewController alloc] init];
UINavigationController * nc = [[UINavigationController alloc] initWithRootViewController:vc];
[self.navigationController presentViewController:nc animated:YES completion:^{
}];
而不是viewWillAppear
框架正确横向
这是一个错误吗?我错过了什么?为什么会出现这样的行为?
答案 0 :(得分:0)
我认为这是设计,请参阅此答案A: View frame changes between viewWillAppear: and viewDidAppear:。
通过viewDidAppear
框架几何图形是正确的,因为它现在在屏幕上并添加到视图层次结构中,但我实际上建议在viewDidLayoutSubviews
中执行它,因为在旋转方向时也会调用它