Установка делегата в awakeFromNib
У меня есть ViewController в Интерфейсном Разработчике, в который встроен TableViewController (я снова использую функциональность TableViewController в другом месте). Мне нужно установить делегата в TabelViewController обратно в UIViewController, в который он встроен, чтобы я мог использовать NavigationController из UIViewController (нажмите на строку во встроенном TableViewController, появится новый ViewController....).
У меня есть делегат, чтобы все это работало, единственная проблема, которую я имею, - это где установить делегата. Я читал это awakeFromNib
вызывается после считывания кончика и установки всех IBOutlets (встроенный TableViewController - это IBOutlet). Я могу просмотреть код и увидеть, что эта функция вызывается при первом запуске приложения. Однако, когда я позже вызываю делегата (при щелчке строки), делегат null
, Если я назначу делегата в viewDidLoad
все отлично работает.
Есть идеи, почему awakeFromNib не работает? Должен ли я делать это в viewDidLoad в любом случае?
Спасибо!
1 ответ
Вы можете узнать больше о том, почему ваш метод awakeFromNib не работает должным образом, здесь: Почему мой awakeFromNib не сработает?
Метод viewDidLoad - это идеальное место для установки UITableViewDelegate, в котором нет никаких реальных преимуществ от его установки другими методами.