模态视图的奇怪位置

Posted

技术标签:

【中文标题】模态视图的奇怪位置【英文标题】:Strange position of modal view 【发布时间】:2013-10-25 07:57:10 【问题描述】:

我一次通过将 UIViewController 推送到导航控制器来呈现它,另一次通过初始化导航控制器的根视图来呈现它。

第一种情况:作为导航控制器的第二张幻灯片

 [self.navigationController pushViewController:riassunto animated:YES];

第二种情况:作为模式视图的根

   UINavigationController *navigationController = [[UINavigationController alloc] initWithRootViewController:riassunto];

        navigationController.navigationBarHidden     = NO;
        [[navigationController navigationBar] setBarStyle:UIBarStyleBlack];
        [self presentViewController:navigationController animated:NO completion:nil];

但是视图的位置不同:

第一个案例

第二种情况

似乎在第二种情况下,模态视图,视图不会向下移动以为顶部栏腾出空间。为什么?

【问题讨论】:

【参考方案1】:

尝试在您的第二个视图控制器中使用它:

riassunto.edgesForExtendedLayout = UIRectEdgeNone;

有关更多信息,我正在扩展此答案:

https://***.com/a/19585104/550034

【讨论】:

确实,在 ios7 中,默认情况下视图会填满整个屏幕,所以你需要告诉它你不想调整视图的大小

以上是关于模态视图的奇怪位置的主要内容,如果未能解决你的问题,请参考以下文章

呈现模态视图控制器时,核心动画层表现得很奇怪。 CATransform3D 问题

presentViewController 不隐藏弹出框,弹出框出现在呈现的模态视图上

关闭 MFMailComposeViewController 后自定义模式视图控制器看起来很奇怪

模态视图导航栏的位置 - iOS7

如何使用 SwiftUI 在模态视图中创建 NSManagedObject?

关闭时,横向iPad上带有键盘的模态视图控制器会更改位置[重复]