隐藏的UINavigationBar出现在becomeFirstResponder上(出现UIKeyboard)

时间:2014-10-22 00:11:17

标签: uinavigationcontroller ios8 uinavigationbar uikeyboard

在iOS8中我有一个UIViewController我已经设置了

[self.navigationController setNavigationBarHidden:YES animated:YES];

viewDidAppear中的

然而,在同一个UIViewController中,我使用becomeFirstResponder触发键盘。似乎忽略了 navigationBar 的隐藏状态,因为当键盘出现时,它会突然显示在视图中。

self.navigationController.hidesBarsWhenKeyboardAppears设置为true会导致短暂的动画切换,这在当前情况下是不可取的。

有没有人碰到过这个?有没有新的API告诉导航栏保持隐藏无论如何?

由于

1 个答案:

答案 0 :(得分:0)

在iOS8中,有很多关于navigationController的漂亮功能,其中一个是像navigationController.hidesBarsOnSwipe这样的新手势属性。在我们的应用程序中,一些UIViewControllers隐藏了导航栏,而其他人则没有。

问题在于,即使我们隐藏了navigationController,我们也没有重置该属性,导致很多混乱。

因此,如果您发现navigationController.navigationBar的可见性存在任何奇怪的行为,请确保您正在重新设置所有必要的属性。