【问题标题】:setBackButtonBackgroundImage not workingsetBackButtonBackgroundImage 不工作
【发布时间】:2016-01-07 01:43:57
【问题描述】:

我只是试图将UINavigationBar 中的后退按钮图标更改为自定义图像,以便它与使用的所有其余图标匹配,但是我已经采用了这两种不同的方式。

在情节提要检查器的UINavigationController 中将背面图像设置为图像,导致图像与标题或rightBarItem 不一致。

我尝试过的另一种方法是在ViewController 文件或appDelegate 中使用setBackButtonBackgroundImage。但是下面的代码;

let backImg: UIImage = UIImage(named: "Back")!           
UIBarButtonItem.appearance().setBackButtonBackgroundImage(backImg, forState: .Normal, barMetrics: .Default)

但是这样做的结果更奇怪,图像被拉伸了。

谁能帮助我了解为什么会发生这种情况或提供另一种方法来更改 UINavigationBar 中的后退图标?

【问题讨论】:

    标签: ios xcode swift uinavigationcontroller


    【解决方案1】:
      let backImage = UIImage(named: "back_button_name")
      UIBarButtonItem.appearance().setBackButtonBackgroundImage(backImage?.resizableImageWithCapInsets(UIEdgeInsetsMake(0, (backImage?.size.width)!-1, 0, 0)), forState: .Normal, barMetrics: .Default)
    

    【讨论】:

      【解决方案2】:

      Swift 3.0

      let backImage = UIImage(named: "arrow_left")
      UINavigationBar.appearance().backIndicatorImage = backImage
      UINavigationBar.appearance().backIndicatorTransitionMaskImage = backImage
      

      【讨论】:

        猜你喜欢
        • 2023-03-17
        • 1970-01-01
        • 2021-01-10
        • 1970-01-01
        • 2019-01-19
        • 1970-01-01
        • 2018-12-22
        • 2016-04-19
        • 1970-01-01
        相关资源
        最近更新 更多