Sobes.tech
Назад к вопросам
Junior — Middle
73

Каким образом вы реализуете делегат для управления таблицей в вашем проекте?

Компании, где спрашивали
Летуаль

Ответ от нейросети

sobes.tech AI

Для управления таблицей (UITableView) в iOS обычно создают класс, который реализует протоколы UITableViewDelegate и UITableViewDataSource. Делегат отвечает за обработку событий взаимодействия с таблицей, а дата-сорс — за предоставление данных.

Пример реализации делегата и дата-сорса:

class MyTableViewController: UIViewController, UITableViewDelegate, UITableViewDataSource {
    let data = ["Яблоко", "Банан", "Апельсин"]

    func tableView(_ tableView: UITableView, numberOfRowsInSection section: Int) -> Int {
        return data.count
    }

    func tableView(_ tableView: UITableView, cellForRowAt indexPath: IndexPath) -> UITableViewCell {
        let cell = tableView.dequeueReusableCell(withIdentifier: "Cell", for: indexPath)
        cell.textLabel?.text = data[indexPath.row]
        return cell
    }

    func tableView(_ tableView: UITableView, didSelectRowAt indexPath: IndexPath) {
        print("Выбран элемент: \(data[indexPath.row])")
    }
}

В проекте обычно создают отдельный класс или расширение для делегата, чтобы отделить логику отображения и обработки событий от контроллера.