2017-09-01 44 views
1

我有一个函数更新ViewController中的两个标签。我如何做到这一点,一旦我切换到这个ViewController,这两个标签得到更新,而不需要用户输入,如按钮?如何在切换到新的ViewController时自动运行代码?

@IBOutlet weak var scoreLabel: UILabel! 

@IBOutlet weak var highScoreLabel: UILabel! 

func updateScores() { 
    scoreLabel.text = "\(UserDefaults.standard.integer(forKey: "EndScore"))" 
    if UserDefaults.standard.string(forKey: "LastGameMode") == "Easy" { 
     highScoreLabel.text = "\(UserDefaults.standard.integer(forKey: "EasyHighScore"))" 
    } else if UserDefaults.standard.string(forKey: "LastGameMode") == "Normal" { 
     highScoreLabel.text = "\(UserDefaults.standard.integer(forKey: "NormalHighScore"))" 
    } else if UserDefaults.standard.string(forKey: "LastGameMode") == "Hard" { 
     highScoreLabel.text = "\(UserDefaults.standard.integer(forKey: "HardHighScore"))" 
    } 
} 

回答

1

你只需要覆盖viewWillAppear并调用updateScores()里面。

您的代码应该是这样的:

override func viewWillAppear(_ animated: Bool) { 
    super.viewWillAppear(animated) 

    updateScores() 
} 
相关问题