Swift 3:如何反转一个透明的导航栏?
我试图创build一个叽叽喳喳的应用程序,模拟真正的应用程序,使用twitter API。 在时间轴视图中,我有一个常规导航栏,当用户点击用户configuration文件时,configuration文件视图具有一个透明栏,以便显示用户的标题图像。 我用下面的代码在导航栏在用户configuration文件视图中是透明的:
self.navigationController?.navigationBar.setBackgroundImage(UIImage(), for: .default) self.navigationController?.navigationBar.shadowImage = UIImage() self.navigationController?.navigationBar.isTranslucent = true
我遇到的问题是当我从configuration文件视图返回,时间轴导航栏已成为混乱(下面的截图)。 我猜这是因为我改变了视图控制器中的导航栏的一些方面的configuration文件视图,当我回到时间轴视图结转。
我怎样才能扭转导航栏的透明度,以解决这个不稳定的导航栏? 在时间轴视图控制器中我尝试使用下面的代码来尝试将其反转,但它不起作用。
self.navigationController?.navigationBar.setBackgroundImage(nil, for: .default) self.navigationController?.navigationBar.shadowImage = nil self.navigationController?.navigationBar.isTranslucent = false
带有定期导航栏的时间轴视图
configuration文件视图与透明的导航栏
从configuration文件视图返回后,用随机的导航栏的时间轴视图
类似的情况也发生在我身上。 后来,我注意到我没有改变正确的生命周期方法中的导航项目的属性。 使其不透明,在viewWillAppear
时间轴视图控制器中,并使其在离开时间轴视图控制器之前透明,在viewWillDisappear
。 这可能与此有关吗?
@朱连,我和你有同样的问题。 我有一个红色导航栏的主视图,并希望详细视图导航栏是透明的。 我设法得到这个工作,但回到主视图遇到同样的故障。 导航栏保持透明1.5秒左右,然后回到原来的红色。 我不能用导航栏的样式解决它,但设法修复它不同的方式。 这不是一个首选的解决scheme,但是现在花了我好几个小时,我没事。
好的,我做的是创build一个ImageView,并在自动布局的导航栏下alignment。 导航栏的高度是44像素,所以ImageView的y坐标是-44。 我给了ImageView红色的导航栏,所以当它是透明的1.5秒,用户实际上看到了ImageView,而不是导航栏的颜色。
我希望这也能帮助你。
- iOS AMSlideMenu接收器(<MainVC:0x8f92a90>)没有标识符为'rightMenu'的segue
- 如何使UINavigationController的导航栏显示在底部?
- 如何更新或发送一个int到前进的视图控制器
- 创buildTurn-Turn导航iPhone应用程序
- RootViewController上的NSInternalInconsistencyException
- 在iOS NavigationBar中用Xamarin.Forms显示“返回菜单”button
- UIWebViewDelegate:webViewDidFinishLoad在页内导航期间不被调用
- 消失在UINavigationController中的TableViewController中的UISearchController
- 如何在iOS中反转Segue时返回信息?