【发布时间】:2017-04-26 18:03:31
【问题描述】:
在我的应用程序中,我在导航控制器中嵌入了两个视图控制器(比如说 viewControllerA 和 viewControllerB)。在 rootviewcontroller 我不想显示导航栏,所以在 viewWillAppear 和 viewWillDisappear 我添加了这些行:
override func viewWillAppear(_ animated: Bool) {
self.navigationController?.setNavigationBarHidden(true, animated: false)
}
override func viewWillDisappear(_ animated: Bool) {
self.navigationController?.setNavigationBarHidden(false, animated: false)
}
现在,当在导航栏下键入后退按钮时(当它开始消失时),从 viewcontrollerB 出现黑色视图。如何删除那个黑色视图?
附:我已将导航栏isTranslucent 设置为 false,但这并不能解决问题。在我的项目中,我没有使用故事板。
【问题讨论】:
-
你能更新一下你的问题的截图吗?
-
抱歉,我无法添加屏幕截图,因为在导航堆栈中一个视图更改为另一个视图时会出现黑色视图,大约 1 秒(或更短)。所以我不能截图。问题是在导航栏消失期间,导航栏也有黑色视图
-
黑色视图有多大..查看与您的帖子类似的帖子stackoverflow.com/questions/42120482/…
-
我正在尝试从我的测试项目中复制您的问题。但它按预期工作。可能问题出在其他地方。发布您的 viewDidLoad 代码可能有助于找到解决方案。
-
我创建了新的测试项目,我也遇到了同样的问题。请看这个(测试项目)dropbox.com/s/gtaxmho70btjqjs/TestNav.zip?dl=0
标签: swift uiview uiviewcontroller uinavigationcontroller