关闭模态视图控制器时,所有主视图内容向上移动 20px

Posted

技术标签:

【中文标题】关闭模态视图控制器时,所有主视图内容向上移动 20px【英文标题】:When dismissing modal view controller, all main view contents moves up by 20px 【发布时间】:2010-04-16 06:21:50 【问题描述】:

我在这两种情况下都使用presentModalViewController:dismissModalViewController: 动画设置为YES,效果很好。

但是,在模式视图被关闭后,主视图上的所有内容都向上移动了 20 像素。这会影响所有视图控制器。

知道为什么会发生这种情况,以及如何克服它吗?

【问题讨论】:

更改模型视图控制器标签 - 它应该是模态视图控制器 dismissing modalViewController moves main view buttons around iphone的可能重复 【参考方案1】:

您是否弄乱了视图的自动调整大小掩码。另外,你隐藏状态栏吗?如果两者都是真的,那么这就是问题所在。

【讨论】:

【参考方案2】:

您是否在应用程序中使用了任何标签栏? 我有类似的问题看到这个帖子,

iPad modalPresentationStyle UIModalPresentationFormSheet orientation problem

这个应用是全屏的吗?

如果是,您可以尝试在模态视图控制器的 viewWillAppear 或 viewWillDisappear 中重新隐藏状态栏。

[[UIApplication sharedApplication] setStatusBarHidden:YES 动画:NO];

【讨论】:

【参考方案3】:

这可能有几个原因,您能否说得更具体一些。

可能的原因: 您是否将状态栏隐藏在其中一个 ViewController 中? 您是否在其中一个视图中有一个半透明的 NavigationBar,而在另一个视图中有一个非半透明的 NavigationBar?

【讨论】:

以上是关于关闭模态视图控制器时,所有主视图内容向上移动 20px的主要内容,如果未能解决你的问题,请参考以下文章

当我在 Cocoa Touch 中加载一个新视图时,它会将所有内容向上移动大约 20 像素

在 iPad 上,如何防止模态视图在键盘呈现时向上移动?

从标签栏控制器模态显示视图

关闭当前视图控制器时 UIView 框架发生变化

呈现/关闭包含表格的模态视图控制器会使表格下降

UIAlertController通过模态视图控制器向上和向下推动