2016-11-21 81 views
0

我注意到,蘋果時鐘應用程序的標題上有一個細條,可以很好地將它與內容分開,並使界面看起來略微3D。我想在我自己的導航欄上覆制這個,但看不到這樣做的方法?我將如何實現這一目標將分隔符添加到UINavigationBar - iOS

timer

my app

+0

你可以把UIView(高度c onstraint等於1,寬度約束等於超級視圖寬度)在UINavigation Bar下。 –

+0

看看這個http://stackoverflow.com/questions/26390072/remove-border-in-navigationbar-in-swift –

+0

謝謝,但多數民衆贊成如何刪除寄宿生?我想添加它 – infernouk

回答

3

我創建的UINavigationBar的一個擴展,以顯示或隱藏分隔線。 默認情況下,我注意到UINavigationBar默認情況下有一個分隔符。

守則雨燕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! 
} 
} 

這裏是如何使用它:

yourNavigationBar.hideNavBarSeperator()

yourNavigationBar.showNavBarSeperator()