我用的是斯威夫特3,我有个问题。
实际上,我想通过编程方式更改我的“后退”按钮标题,但它在任何时候都不起作用。
当我的标题很短的时候效果很好,但是当长度超过20个字符时,它只显示“Back”。
要更改标题,我在父控制器中使用此选项:

let backItem = UIBarButtonItem()
backItem.title = "new name"
navigationItem.backBarButtonItem = backItem

你知道为什么它长的时候不显示标题吗?
谢谢你的帮助

最佳答案

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

var btn1: UIButton!

现在您可以这样创建UIBarButtonItem
    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您可以随时更改标题和图像。

关于ios - 以编程方式更改后退按钮swift 3,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/43980117/

10-11 17:51