如何删除UINavigationBar的边界底部?

如何删除UINavigationBar的边界底部?

问题描述:

我想从UINavigationBar中删除底部边框,但我不知道如何删除它。如何删除UINavigationBar的边界底部?

enter image description here

+5

可能重复[如何隐藏iOS7 UINavigationBar 1px底线](http://*.com/questions/19226965/how-to-hide-ios7-uinavigationbar-1px-bottom-line) –

你可以做到这一点

self.navigationController.navigationBar.layer.borderWidth = 0.0; 

OR

你可以给边框颜色相同的导航栏背景颜色

self.navigationController.navigationBar.layer.borderColor = [UIColor colorWithRed:<#(CGFloat)#> green:<#(CGFloat)#> blue:<#(CGFloat)#> alpha:<#(CGFloat)#>]; 
+0

所有没有用iOS 10.2 – user9527

+0

这不起作用。 –

您需要设置自定义阴影图像显示,而不是默认的。注意:还必须设置自定义背景图像。

navController.navigationBar.barTintColor = .blue //set your color 
navController.navigationBar.isTranslucent = false 

navController.navigationBar.setBackgroundImage(UIImage(), for: .default) 
navController.navigationBar.shadowImage = UIImage() 

对于iOS 11,您可以使用(不推荐使用)黑色半透明导航栏样式和自定义栏色调。

其实,那就是导航栏的shadow

要摆脱它,只需将它设置为一个空的图像:

navigationController.navigationBar.shadowImage = UIImage() 

注:你必须将其设置为空UIImage();由于某种原因,nil将不起作用。