このような関数でユーザーが変更された後、私はよく updateUI を使用します。これは非常に単純で、UI が更新されるたびに関数を呼び出すだけです。
func updateUI() {
// Redraw your labels, update your UIElements, do what you have to do
}
アプリを閉じずにモーダルに表示された ViewController からこの関数を呼び出す方法は、委任を使用することです。モーダル プレゼンテーションはスタックとヒープから古い ViewController をスローしないため、委任は次のように機能します。
モーダルコントローラーで:
protocol ChangeViewControllerDelegat: class {
func updateUI(sender:UIButton)
}
class ChangeViewController: UIViewController {
weak var delegate: ChangeViewControllerDelegat?
func opChangingUserSettings() {
// Change settings with your code
// tell your ViewController to do it.
delegate?.updateUI()
}
あなたのmainVCで
class MainViewController: UIViewController, ExtensionViewControllerDelegate {
func updateUI() {
// Redraw your labels, update your UIElements, do what you have to do
}
}
それが役立つことを願っています!
ところで、ひょっとしてその場で言語を変えようとしているのですか?もしそうなら、私はあなたにそれを行う方法を示すことができます. そうでない場合、そして私があなたの質問を理解していれば、これはうまくいくはずです。