我有UIBarButtonItem
,每当我尝试为按钮设置标题时,它都无效。
@IBOutlet weak var barButton: UIBarButtonItem!
override func viewDidLoad() {
super.viewDidLoad()
barButton.title = "AB"
}
但是,如果我尝试创建UIBarButtonItem
的Action然后执行sender.setTitle(),那么它可以工作。但不是viewDidLoad
。当用户点击按钮时,我不想设置标题。
答案 0 :(得分:1)
更改标题或图像,然后将其重新签名回navigationItem:
class AnotherViewController: UIViewController {
@IBOutlet weak var myBarButton: UIBarButtonItem!
override func viewDidLoad() {
super.viewDidLoad()
// Do any additional setup after loading the view.
let barButton = myBarButton
barButton?.title = "Anther Title"
navigationItem.rightBarButtonItem = barButton
}
}
Apple文档:https://developer.apple.com/reference/uikit/uibaritem/1616412-title
您应该在将项目添加到栏之前设置此属性。默认值为nil。
答案 1 :(得分:0)
答案 2 :(得分:0)
当我尝试这个时,它有效。也许Xcode有一个错误,删除你的按钮和连接然后再试一次。
class ViewController: UIViewController {
@IBOutlet weak var barButton: UIBarButtonItem!
override func viewDidLoad() {
super.viewDidLoad()
// Do any additional setup after loading the view, typically from a nib.
barButton.title = "MyButton"
}
答案 3 :(得分:0)
试试这个
@IBOutlet weak var barButton: UIBarButtonItem! {
didSet {
barButton.title = "AB"
}
}