swiftCopy code
import UIKit
class ToDoListTableViewController: UITableViewController, AddTaskDelegate {
var tasks: [ToDoItem] = []
override func viewDidLoad() {
super.viewDidLoad()
navigationItem.rightBarButtonItem = UIBarButtonItem(barButtonSystemItem: .add, target: self, action: #selector(addTaskButtonTapped))
}
@objc func addTaskButtonTapped() {
if let addTaskViewController = storyboard?.instantiateViewController(withIdentifier: "AddTaskViewController") as? AddTaskViewController {
addTaskViewController.delegate = self
navigationController?.pushViewController(addTaskViewController, animated: true)
}
}
func addTask(_ task: ToDoItem) {
tasks.append(task)
tableView.reloadData()
}
override func tableView(_ tableView: UITableView, numberOfRowsInSection section: Int) -> Int {
return tasks.count
}
override func tableView(_ tableView: UITableView, cellForRowAt indexPath: IndexPath) -> UITableViewCell {
let cell = tableView.dequeueReusableCell(withIdentifier: "ToDoItemCell", for: indexPath)
cell.textLabel?.text = tasks[indexPath.row].title
return cell
}
}