Я рекомендую забыть didSelectRowAt
и подключить переход к ячейке прототипа в Интерфейсном Разработчике, а не к контроллеру представления.
func tableView(_ tableView: UITableView, didSelectRowAt indexPath: IndexPath) {
let indexPath = tableView.indexPathForSelectedRow
let currentCell = tableView.cellForRow(at: indexPath!)! as! CustomTableViewCell
let currentItem = currentCell.userUID!.text
var user3: String = ""
user3.append(currentItem!)
}
Затем вызывается prepare(for segue
, передавая ячейку табличного представления в параметре отправителя
func prepare(for segue: UIStoryboardSegue, sender: Any?) {
if let destinationViewController = segue.destination as? userViewController,
let cell = sender as? CustomTableViewCell,
let indexPath = tableView.indexPath(for: cell) {
let currentUID = posts[indexPath.row].uid
destinationViewController.user2 = currentUID
}
}
}
Всегда получать данные из модели (массив источника данных), а неиз вида (ячейка)