Сократите свои имена или не используйте панель вкладок. У вас будет пять или шесть контроллеров представления, но вы хотите, чтобы в любой момент времени было доступно только два? Если две трети ваших просмотров будут в списке «больше», почему бы просто не отобразить все из них в списке? Тогда вы могли бы освободить пространство внизу, и никакой вид не потребовал бы иметь дополнительные метчики.
Если вы действительно хотите это сделать, вам следует написать замену для UITabBarController
. Я просмотрел UIKit
и даже попытался пролистать -_viewControllersInTabBar
, но ограничение в пять кнопок предполагается в нескольких местах в UITabBarController
, так что вам лучше написать свое.
Возможно, вы заметили, что некоторые приложения для iPad, например YouTube, имеют более пяти элементов панели вкладок:
(источник: apple.com )
Как это может быть, если UITabBarController так одержим наличием не более пяти контроллеров представления? Возможно, Apple добавила какой-то приватный метод в UITabBarController
в 3.2 SDK, который мог бы вам помочь. Может быть, это называется что-то вроде -_setMaximumNumberOfItems:
и, возможно, оно устанавливает переменную экземпляра NSUInteger
с именем _maxItems
. Если бы Apple добавила такой закрытый метод, вам все равно пришлось бы ждать, пока выйдет совместимая с iPhone версия 3.2, и даже тогда использование закрытых методов - это плохо.
Измените названия ваших вкладок. Не такая уж большая сделка.