UITabBarItem теряет оттенок на PopViewController

Итак, у меня есть UINavigationController, встроенный в UITabBarController. При выборе элемента панели вкладок мне предоставляется UITableView, который является корнем NavController. Выбор элемента в таблице приводит меня к следующему представлению (push), где я устанавливаю значения для этого элемента. После нажатия кнопки "Сохранить изменения" я возвращаю пользователя к корневому контроллеру (представление таблицы). Тем не менее, UITabBarItem превратился из оттенка синего обратно в оттенок серого по умолчанию. Если в то время как на втором экране я нажимаю кнопку отмены в NavBar, чтобы вернуться к корню, UITabBarItem в порядке, т.е. все еще выделен и окрашен синим цветом.

Я попробовал несколько подходов, включая установку выбранного элемента TabBar в viewWillAppear, а также пытался установить оттенок в самом UITabBarController. Ничто, кажется, не решает проблему. Что действительно интересно, так это то, что в viewDidAppear UITableView (корневой вид), если я устанавливаю оттенок выбранного TabBarItem на синий, результирующий цвет будет темно-серым.

Если я выберу другой элемент на панели вкладок, а затем снова выберу первый элемент, синий оттенок вернется. Это как-то связано с возвратом к основному представлению, которое вызывает это.

Кто-нибудь видел это? Какие-нибудь мысли?

1 ответ

Если у вас есть какие-либо модальные или всплывающие окна (например, AlertView) в viewWillAppear, viewDidLoad (или в любое время до того, как представление наконец появилось), это приведет к изменению оттенка при выталкивании представления.

Проверьте свой второй контроллер представления, если у него есть такая вещь.

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