iOS Swift从普通导航栏过渡到透明栏

时间:2017-06-23 09:32:26

标签: ios swift uinavigationcontroller uinavigationbar transition

enter image description here

我搜索了类似的问题,但他们都没有解决这个问题。 我试图从具有普通导航栏的视图控制器推送到具有透明导航栏的新视图控制器。 这是我用来设置导航栏透明的第二个视图控制器中的代码

self.navigationController?.navigationBar.setBackgroundImage(UIImage(), for: .default) self.navigationController?.navigationBar.shadowImage = UIImage() navigationController?.navigationBar.barTintColor = .clear self.navigationController?.navigationBar.isTranslucent = true

如果在过渡期间导航栏上没有浅灰色,我怎样才能获得平滑过渡?

2 个答案:

答案 0 :(得分:0)

您需要做的是创建自定义导航栏并改为使用它。它看起来会好得多。我有类似的问题,唯一能解决它的是创建自定义导航栏。转到您的故事板并添加它:

enter image description here

答案 1 :(得分:0)

我附上了一个示例项目供您参考,一切都是通过故事板设置的,没有代码。希望它有所帮助!

file link

这是项目实现的目标,在显示按钮的viewController上,导航栏可见,单击按钮时,另一个viewController被推入视图,但导航栏完全隐藏在视图之外。它仅在用户点按视图中的任何位置时显示。