Я хочу настроить внешний вид панели вкладок UITabBarController. Я хочу изменить цвета, как выглядит значок при их выборе, а также, самое главное, я хочу уменьшить размер настраиваемой панели инструментов.Пользовательский UITabBarController
Мои подходы для этого и препятствия в нем:
A) Первое решение, которое пришло мне на ум, чтобы создать свой собственный ViewController, который будет действовать как UITabBarController с помощью кнопок в нижней части, и добавьте ViewController к окну. Когда пользователь нажимает кнопку внизу, замените вид в области видимости на новый элемент viewController, который соответствует кнопке, которая теперь используется пользователем.
Проблемы с этой стратегией является: так как я поменять точку зрения в соответствующем viewControllers не получит эти сообщения:
viewWillAppear
viewWillDisappear
viewDidAppear
viewDidDisappear
И все вращения события
B) Я мог бы использовать подход принято отвечать в этой теме: Custom UITabBarController Problems with View Controllers and Views
Но высота моего TabBar не является таким же, как по умолчанию.
Из-за указанных выше причин я не могу использовать эти подходы.
Сказав это, у меня нет специального требования к вкладке «Дополнительно». У меня будет только 5 вкладок, которые будут отображаться на панели вкладок, и, следовательно, переупорядочение элементов панели табуляции выходит за рамки.
Ожидает предложений и идей.
Хм, спасибо за ваше предложение , Хорошо, я мог бы настроить, как вы сказали. Кроме того, я могу пересылать все сообщения так же, как вы указали. Но проблема заключается в следующем: 1. -viewWillAppear и disAppear будут не чем иным, как последовательным набором вызовов! 2. Контроллер просмотра автоматически получает обратный вызов начальной ориентации при загрузке представления, а именно. -didRotateFromInterfaceOrientation, но в этом случае нам придется имитировать его. 3. Меня беспокоят любые проблемы или препятствия, которые могут возникнуть в будущем, поскольку это база для моего приложения. Интересно, стоит ли этого риска? –
Все контроллеры представлений в этом предложении означают: «UITabBarController возвращает только YES, если все его дочерние контроллеры возвращают YES для запрошенной ориентации», скажем, если есть 4 вкладки, то если все контроллеры представления, соответствующие 4 вкладкам, отвечают только текущей ориентации, тогда он должен возвращать YES -OR- только для контроллера вида, который отображается с помощью TabBarcontroller, должен быть запрошен? –