Проблема в том, что мне нужно вызвать функцию класса root внутри класса пользовательского табличного представления. Эта функция изменяет текст в главном окне. Мне нужно очень часто обновлять sh этот текст, поэтому я решил переопределить метод reloadData, чтобы добавить туда некоторые функции.
Я переопределяю метод reloadData.
protocol ReloadingDelegate {
func returnHomeController() -> HomeController
}
class EntriesTableVIew: UITableView {
var reload: ReloadingDelegate?
override func reloadData() {
super.reloadData()
print("reloaded")
let homeController = reload?.returnHomeController()
homeController?.reloadBalance()
}
}
Я пытаясь использовать протокол в HomeCotroller для передачи себя.
extension HomeController: ReloadingDelegate {
func returnHomeController() -> HomeController {
return self
}
}
Я уверен, что делаю что-то не так, так как не до конца понимаю концепцию протоколов. Итак, основная проблема в двух словах: как я могу вызвать функцию из одного класса внутри другого класса; тем не менее, эта функция при прямом вызове из экземпляра класса возвращает ноль? Заранее спасибо!