У меня есть метка, которая появляется на панели навигации при первом открытии представления FirstViewController.Метка показывает число, которое должно быть в состоянии изменить.Если я нажимаю кнопку на FirstViewController, то открывается вид SecondViewController, в навигационной панели которого метка FirstViewController все еще видна.Когда я изменяю число, записанное в метке, нажав кнопку в SecondViewController, номер метки изменяется только тогда, когда я возвращаюсь к представлению FirstViewController.Это потому, что я обновляю заголовок в цикле ViewDidLoad String.Теперь мой вопрос: я хочу изменить номер метки в тот момент, когда я нажимаю кнопку в SecondViewController, хотя метка была определена в коде FirstViewController.Номер метки показывает сумму денег.
Это код FirstViewController:
var moneyLabel: UILabel?
override func viewDidLoad() {
super.viewDidLoad()
setupNavigationLabel()
let newMoney:String = String(format: "%f", money)
updateTitle(title: "\(newMoney)")
}
func updateTitle(title: String) {
if let myTitleView = self.moneyLabel {
myTitleView.text = title
}
}
func setupNavigationLabel() {
let navigationBar = self.navigationController?.navigationBar
let moneyFrame = CGRect(x: 300, y: 0, width:
(navigationBar?.frame.width)!/2, height: (navigationBar?.frame.height)!)
moneyLabel = UILabel(frame: moneyFrame)
moneyLabel?.text = "\(money)"
navigationBar?.addSubview(moneyLabel!)
}