Установка делегата в awakeFromNib

У меня есть ViewController в Интерфейсном Разработчике, в который встроен TableViewController (я снова использую функциональность TableViewController в другом месте). Мне нужно установить делегата в TabelViewController обратно в UIViewController, в который он встроен, чтобы я мог использовать NavigationController из UIViewController (нажмите на строку во встроенном TableViewController, появится новый ViewController....).

У меня есть делегат, чтобы все это работало, единственная проблема, которую я имею, - это где установить делегата. Я читал это awakeFromNib вызывается после считывания кончика и установки всех IBOutlets (встроенный TableViewController - это IBOutlet). Я могу просмотреть код и увидеть, что эта функция вызывается при первом запуске приложения. Однако, когда я позже вызываю делегата (при щелчке строки), делегат null, Если я назначу делегата в viewDidLoadвсе отлично работает.

Есть идеи, почему awakeFromNib не работает? Должен ли я делать это в viewDidLoad в любом случае?

Спасибо!

1 ответ

Решение

Вы можете узнать больше о том, почему ваш метод awakeFromNib не работает должным образом, здесь: Почему мой awakeFromNib не сработает?

Метод viewDidLoad - это идеальное место для установки UITableViewDelegate, в котором нет никаких реальных преимуществ от его установки другими методами.

Другие вопросы по тегам