次のケースのように遷移先のViewから戻ってきた時に、遷移元のViewにあるテーブルのデータを再表示する方法について紹介します。
- TableViewで構成されたViewA→ViewBへ移動
- ViewBでテーブルのデータを操作
- ViewAに戻った時に、ViewBで変更した値を反映させる。
実装方法
ViewA(遷移元)の画面は次のようになります。
// 対象のtableViewを接続
@IBOutlet weak var tableView: UITableView!
override func viewWillAppear(_ animated: Bool) {
super.viewWillAppear(animated)
//テーブルを再描画
tableView.reloadData()
}
ポイントはviewWillAppearの中でテーブルをリロードすることです。
遷移先から戻った時に、viewDidLoadの処理は走らないので、この中にreloadDataを書いても値が更新されません。
一方、viewWillAppearは、画面遷移してから戻る際にも呼ばれるため、この中にテーブルを更新して表示する処理を書いておけば最新の状態のテーブルを表示することが可能です。
created by Rinker
¥3,536
(2024/10/14 23:09:42時点 Amazon調べ-詳細)
(2024/10/14 23:09:42時点 Amazon調べ-詳細)