附加导航栏在模态 segue 推送时从顶部滑动
Additional navigation bar slides from top on modal segue push
我的 iOS 应用程序的第一个屏幕是登录屏幕 + 位于底部的注册按钮。它嵌入在导航视图控制器中,尽管当下一个屏幕从右侧滑入时导航栏在成功登录之前变得不可见。这很好用。
问题是点击注册按钮后注册视图(模态)向上滑动。注册视图嵌入在另一个导航控制器中,它在其滑动视图的顶部包含导航栏。 同时,从顶部开始,第二个导航栏(空)也向下滑动。第二个导航栏立即被模态视图覆盖,但有一会儿屏幕闪烁,这是恼人的。
如何防止附加导航栏从顶部滑落?
我发现了错误!
登录视图控制器有方法:
override func viewWillDisappear(_ animated: Bool) {
navigationController?.setNavigationBarHidden(false, animated: animated)
super.viewWillDisappear(animated)
}
有必要在 after-login 视图控制器中恢复导航栏,但在注册视图控制器中产生了烦人的效果。所以我删除了它,而是将代码片段插入 after-login view-controller:
override func viewWillAppear(_ animated: Bool) {
navigationController?.setNavigationBarHidden(false, animated: animated)
super.viewWillAppear(animated)
}
我的 iOS 应用程序的第一个屏幕是登录屏幕 + 位于底部的注册按钮。它嵌入在导航视图控制器中,尽管当下一个屏幕从右侧滑入时导航栏在成功登录之前变得不可见。这很好用。
问题是点击注册按钮后注册视图(模态)向上滑动。注册视图嵌入在另一个导航控制器中,它在其滑动视图的顶部包含导航栏。 同时,从顶部开始,第二个导航栏(空)也向下滑动。第二个导航栏立即被模态视图覆盖,但有一会儿屏幕闪烁,这是恼人的。
如何防止附加导航栏从顶部滑落?
我发现了错误!
登录视图控制器有方法:
override func viewWillDisappear(_ animated: Bool) {
navigationController?.setNavigationBarHidden(false, animated: animated)
super.viewWillDisappear(animated)
}
有必要在 after-login 视图控制器中恢复导航栏,但在注册视图控制器中产生了烦人的效果。所以我删除了它,而是将代码片段插入 after-login view-controller:
override func viewWillAppear(_ animated: Bool) {
navigationController?.setNavigationBarHidden(false, animated: animated)
super.viewWillAppear(animated)
}