setNavigationBarHidden 使整个视图向上/向下滑动

Posted

技术标签:

【中文标题】setNavigationBarHidden 使整个视图向上/向下滑动【英文标题】:setNavigationBarHidden makes whole view slide up/down 【发布时间】:2015-09-28 11:16:56 【问题描述】:

[self.navigationController setNavigationBarHidden:YES/NO animated:YES] 使整个视图向上/向下滑动。有没有人知道如何解决这个问题。困扰了我很长时间。非常感谢!

【问题讨论】:

您能否澄清一下您到底想要什么以及到底发生了什么。 @AkshayAgrawal 我想要的是当导航栏隐藏时,viewcontroller的整个视图不会向上滑动。似乎没有官方API可以解决这个问题。 我认为您使用导航栏添加了视图控制器视图的顶部约束。所以当它隐藏视图时分别向上和向下滑动。 好的,这是个好主意,我会试试的。非常感谢。 如果觉得有用请点赞。 【参考方案1】:

您是否尝试过使用animated:NO?如果关闭动画,理论上它不应该显示滑动。

【讨论】:

我不是说幻灯片动画,困扰我的是,当我设置导航栏和状态栏隐藏时,导航控制器顶部视图控制器的视图控制器视图(self.view)将设置 Y 幻灯片 64 .f【参考方案2】:

隐藏或不隐藏导航栏有两种选择。

    [self.navigationController setNavigationBarHidden:YES/NO]; [self.navigationController setNavigationBarHidden:YES/NO 动画:NO];

对于您的解决方案,您可以首先使用不存在动画选项的动画选项,也可以使用动画:否。就我而言,最好只先使用。

【讨论】:

我不是说幻灯片动画,是关于self.view的框架。似乎在ios7及更高版本,视图是导航底部的布局,当我隐藏导航栏和状态栏,view(self.view)会重置frame的原点,所以view中的subviews都会重置原点

以上是关于setNavigationBarHidden 使整个视图向上/向下滑动的主要内容,如果未能解决你的问题,请参考以下文章

setNavigationBarHidden 动画在 iPhone X 上无法正常工作

setNavigationBarHidden 使整个视图向上/向下滑动

setNavigationBarHidden 在其他类中不起作用(Swift 3.0)

ios UINavgationController setNavigationBarHidden

setNavigationBarHidden 不能以编程方式工作?

使整行可点击