遷移先画面から戻った時にテーブルを再表示する方法を解説します。
本記事は次のようなケースを想定しています。
- TableViewで構成された画面Aから画面Bを呼び出す。
- 画面Bでリストの値を変更。
- 画面Aに戻った時に、2で変更された値をTableViewに反映させる。
環境
この記事の情報は次のバージョンで動作確認しています。
【Swift】Version 4.1.2
【Xcode】Version 10.0
【iOS】12.0
【Xcode】Version 10.0
【iOS】12.0
実装方法
事前に対象のtableViewをアウトレット接続で連携しておきます。
1 2 3 4 5 6 7 8 9 10 11 12 13 14 |
/// 対象のtableViewをアウトレット接続で連携 @IBOutlet weak var tableView: UITableView! /// 画面再表示 override func viewWillAppear(_ animated: Bool) { super.viewWillAppear(animated) tableView.reloadData() } |
解説
viewWillAppear() は画面表示の直前に呼ばれるメソッドです。 画面初期表示の時にも呼ばれますが、遷移先画面から戻ってきた時にも呼ばれます。
このメソッドをオーバーライドして、その中でUITableView.reloadData()メソッドをcallします。
遷移元画面への戻り方はこちらを参照してください。
【Swift/iOS】遷移元画面への戻り方
遷移元画面へ戻る方法について解説します。 モーダル型の通常の画面遷移と、Navigation Controller管理下での階層型画面遷移では、戻り方が違いますので注意して下さい。