Прежде всего, при переключении представления в UITabBarController, функция viewDidUnload
не вызывается, потому что представление фактически не выгружено.Итак, это нормально.
Что из коробки должно работать viewWillAppear
/ viewDidDisappear
.Но тут есть подвох.В зависимости от того, как вы показываете свои взгляды, может случиться так, что viewWillAppear
/ viewDidDisappear
не будет вызван фреймворком для вас.Например, это происходит, если вы добавляете свое представление как подпредставление, но есть и другие случаи.Я не знаю, как вы отображаете панель вкладок, поэтому не могу сказать что-то более конкретное об этом.
Простое решение, которое я предлагаю исправить, это переопределение селектора tabBarController:didSelectViewController:
в вашем делегате контроллера панели вкладок.Оттуда вы можете реализовать свою собственную логику или позвонить viewDidDisappear
.