Search code examples
iosswiftios7xcode6

Back button custom image


I am trying to use a custom image for back button in my iOS app. I see a unexplained line in the back button when I use following code.

    UIBarButtonItem.appearance().setBackButtonTitlePositionAdjustment(UIOffsetMake(0, -60), forBarMetrics: .Default)

    var backImage: UIImage = UIImage(named: "back-button")!
    var barBackBtnImg: UIImage = backImage.resizableImageWithCapInsets(UIEdgeInsetsMake(0, 14, 0, 0))
    UIBarButtonItem.appearance().setBackButtonBackgroundImage(barBackBtnImg, forState: UIControlState.Normal, barMetrics: UIBarMetrics.Default)

Attached is the screenshot of what it is right now.

If I remove

var barBackBtnImg: UIImage = backImage.resizableImageWithCapInsets(UIEdgeInsetsMake(0, 14, 0, 0))

it looks like this:

enter image description here

Please help. Thanks in advance.


Solution

  • This worked for me!!!

    var backImage: UIImage = UIImage(named: "back-button")!
    backImage = backImage.imageWithRenderingMode(UIImageRenderingMode.AlwaysOriginal)
    UINavigationBar.appearance().backIndicatorImage = backImage
    UINavigationBar.appearance().backIndicatorTransitionMaskImage = backImage