Ios 以编程方式更改后退按钮swift 3

Ios 以编程方式更改后退按钮swift 3,ios,swift,Ios,Swift,我正在使用Swift 3,但我遇到了一个问题。 事实上,我想以编程方式更改后退按钮标题,但它在任何时候都不起作用 当我的标题很短时效果很好,但当长度大于20个字符时,它只显示“Back” 要更改标题,我在父控制器中使用此选项: let backItem = UIBarButtonItem() backItem.title = "new name" navigationItem.backBarButtonItem = backItem 你知道为什么它长的时候不显示标题吗 感谢您的帮助首先,您需要

我正在使用Swift 3,但我遇到了一个问题。 事实上,我想以编程方式更改后退按钮标题,但它在任何时候都不起作用

当我的标题很短时效果很好,但当长度大于20个字符时,它只显示“Back”

要更改标题,我在父控制器中使用此选项:

let backItem = UIBarButtonItem()
backItem.title = "new name"
navigationItem.backBarButtonItem = backItem
你知道为什么它长的时候不显示标题吗


感谢您的帮助

首先,您需要在控制器中创建UIButton的属性

var btn1: UIButton!
现在您可以这样创建
uibarbuttonite

    btn1 = UIButton(type: .custom)
    btn1.setImage(UIImage(named: "imagename"), for: .normal)
    btn1.setTitle("Back", for: .normal)
    btn1.frame = CGRect(x: 0, y: 0, width: 30, height: 30)
    btn1.addTarget(self, action: #selector(Class.Methodname), for: .touchUpInside)

    navigationItem.backBarButtonItem = UIBarButtonItem(customView: btn1)

通过使用
btn1
您可以随时更改标题、图像。

首先,您需要在控制器中创建UIButton的属性

var btn1: UIButton!
现在您可以这样创建
uibarbuttonite

    btn1 = UIButton(type: .custom)
    btn1.setImage(UIImage(named: "imagename"), for: .normal)
    btn1.setTitle("Back", for: .normal)
    btn1.frame = CGRect(x: 0, y: 0, width: 30, height: 30)
    btn1.addTarget(self, action: #selector(Class.Methodname), for: .touchUpInside)

    navigationItem.backBarButtonItem = UIBarButtonItem(customView: btn1)

通过使用
btn1
您可以随时更改标题和图像。

您可以在父视图控制器中更改标题和图像

override func prepare(for segue: UIStoryboardSegue, sender: Any?) {
let backItem = UIBarButtonItem()
backItem.title = "Back"
navigationItem.backBarButtonItem = backItem // This will show in the next view controller being pushed
}

您可以在父视图控制器中更改它

override func prepare(for segue: UIStoryboardSegue, sender: Any?) {
let backItem = UIBarButtonItem()
backItem.title = "Back"
navigationItem.backBarButtonItem = backItem // This will show in the next view controller being pushed
}

这是正常的行为。它考虑了可用空间,并且有一种最小字体大小。如果可能的话,它是“