Вы можете использовать viewWillAppear точно так же, как предложил Раджеш:
override func viewWillAppear(_ animated: Bool) {
tableView.reloadData()
}
Или вы можете использовать функцию обратного вызова для передачи данных и перезагрузки представления таблицы контроллера 1.
В ViewController 2 определите вашфункция обратного вызова:
// Callback function
var callbackResult: ((data) -> ())?
И вызовите ее перед возвратом к ViewController 1:
callbackResult?(data)
self.navigationController?.popViewController(animated: true)
В ViewController 1 используйте закрытие функции обратного вызова, чтобы собрать результат и перезагрузить tableView.Это может произойти внутри prepareForSegue, например:
override func prepare(for segue: UIStoryboardSegue, sender: Any?) {
if segue.identifier == "goToViewController2" {
let destinationVC = segue.destination as! ViewController2
// Set any variable in ViewController2
destinationVC.callbackResult = { result in
// assign passing data etc..
self.tableView.reloadData()
}
}
}