将分隔符添加到UINavigationBar - iOS

inf*_*ouk 0 iphone uinavigationbar ios swift

我注意到苹果时钟应用程序的标题上有一个细条,可以很好地将其与内容分开,并使界面看起来略微3D.我想在我自己的导航栏上复制这个但是看不到这样做的方法?我怎么做到这一点

计时器

我的应用

Pra*_*wal 5

我在UINavigationBar上创建了一个扩展来显示或隐藏该分隔线.默认情况下,我注意到UINavigationBar默认有一个分隔符.

Swift中的代码2.3

extension UINavigationBar {

func hideNavBarSeperator()
{
    let img = UIImage()
    self.shadowImage = img
    self.setBackgroundImage(img, forBarMetrics: UIBarMetrics.Default)
}

func showNavBarSeperator()
{
    let img = UIImage.pixelImageWithColor(UIColor.redColor())//Use Any Color
    self.shadowImage = img
}
}

extension UIImage {
class func pixelImageWithColor(color: UIColor) -> UIImage {
    let rect = CGRectMake(0.0, 0.0, 1.0, 1.0)
    UIGraphicsBeginImageContext(rect.size)
    let context = UIGraphicsGetCurrentContext()

    CGContextSetFillColorWithColor(context!, color.CGColor)
    CGContextFillRect(context!, rect)

    let image = UIGraphicsGetImageFromCurrentImageContext()
    UIGraphicsEndImageContext()

    return image!
}
}
Run Code Online (Sandbox Code Playgroud)

以下是如何使用它:

yourNavigationBar.hideNavBarSeperator()

yourNavigationBar.showNavBarSeperator()