更改导航栏按钮项的标题

5
let button = UIButton()
        button.setImage(UIImage(named: "coin_icon"), forState: UIControlState.Normal)
        button.addTarget(self, action:#selector(Profile.goCoin), forControlEvents: UIControlEvents.TouchDragInside)
        button.frame=CGRectMake(0, 0, 30, 30)
        let barButton = UIBarButtonItem(customView: button)
        self.navigationItem.rightBarButtonItem = barButton

我的代码是在导航栏上添加一个按钮。

然而,我需要在一个函数中更改按钮的标题。

func changetitle() {
self.navigationItem.rightBarButtonItem?.title = "Change"
}

我试过这个,但是没有用。

我如何更改这个按钮的标题?

1个回答

22
你需要从UIBarButtonItem中访问UIButton并更改UIButton的标题。
func changetitle() {
    let item = self.navigationItem.rightBarButtonItem!
    let button = item.customView as! UIButton
    button.setTitle("Change", for: .normal)
}

是的,它有效,只需要将“item”更改为“item!”并将“as”更改为“as!” - Utku Dalmaz
button.setTitle("更改", for: .normal) - Naomi DL
@famfamfam 请发布您自己的问题,展示所有相关代码和详细信息,说明正在发生什么以及应该发生什么。 - rmaddy

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接