У меня есть табличное представление со многими ячейками табличного представления. Когда пользователь нажимает на ячейку, я хочу обновить текст метки ячейки.
Вот мой класс контроллера представления таблицы:
class MyTableViewController: UITableViewController {
var data = [Data]()
override func viewDidLoad() {
super.viewDidLoad()
tableView.delegate = self
tableView.dataSource = self
// Here I fetch and populate the data list
}
override func numberOfSections(in tableView: UITableView) -> Int {
return 1
}
override func tableView(_ tableView: UITableView, numberOfRowsInSection section: Int) -> Int {
return data.count
}
override func tableView(_ tableView: UITableView, cellForRowAt indexPath: IndexPath) -> UITableViewCell {
let cellIdentifier = "MyTableViewCell"
guard let cell = tableView.dequeueReusableCell(withIdentifier: cellIdentifier, for: indexPath) as? MyTableViewCell else {
fatalError("The dequeued cell is not an instance of MyTableViewCell.")
}
let cellData = data[indexPath.row]
cell.initialize(data: cellData)
return cell
}
}
А вот мой класс представления таблицы:
class MyTableViewCell: UITableViewCell {
var data: Data?
@IBOutlet weak var nameLabel: UILabel!
func initialize(data: Data) {
self.data = data
if let cellName = data.name {
nameLabel.text = cellName
}
}
}
Как я могу изменить текст nameLabel
выше (на "Нажатие"), когда пользователь нажимает на ячейку табличного представления?