Swift-->全透明标题栏和导航栏(真正的沉浸式)

这是默认的效果: 标题栏和导航栏都有背景和横线
Swift-->全透明标题栏和导航栏(真正的沉浸式)_第1张图片

修改后的效果…喜不喜欢?
Swift-->全透明标题栏和导航栏(真正的沉浸式)_第2张图片


1:标题栏的修改

navigationController?.navigationBar.subviews[0].removeFromSuperview()//去掉NavigationBar的背景和横线

2:导航栏的修改

if let views = tabBarController?.tabBar.subviews {
 views[views.count - 1].removeFromSuperview()   //去掉TabBar中的横线
 views[0].removeFromSuperview()                 //去掉TabBar中的背景
}

注意: NavigationBar的 横线和背景都属于一个UIImageView, 而TabBar的横线和背景属于二个不同的UIImageView, 所以…

网上有一种使用透明图片的方法设置, 和设置空背景的方法. 但是很low,有没有?

navigationController?.navigationBar.setBackgroundImage(UIImage(), forBarMetrics: .Default)  //会有黑线

至此: 文章就结束了,如有疑问: QQ群 Android:274306954 Swift:399799363 欢迎您的加入.

你可能感兴趣的:(Swift,Navigation,TabBar)