2016-11-21 6 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()

関連する問題