iPhone: пользовательская вкладка без ужасного меню «Дополнительно»

Итак, я хотел создать панель вкладок, которая имеет более 5 элементов, прокручивается и найденэта статья, Это легко сделать, создав подкласс UITabBarController и скрыв существующую панель вкладок:

for(UIView *view in self.view.subviews)
{
    if([view isKindOfClass:[UITabBar class]])
    {
        view.hidden = YES;
        break;
    }
}

Затем я просто добавляю UIScrollView и добавляю туда несколько кнопок на основе коллекции элементов контроллера tabbar.

int i = 0;
for (UITabBarItem *item in self.tabBar.items)
{
    UIView *tab = [[[UIView alloc] initWithFrame:CGRectMake(i*60, 0, 60, 60)] autorelease];

    UIButton *btn = [[[UIButton alloc] initWithFrame:CGRectMake(7.5, 1, 45, 45)] autorelease];
    [btn setImage:item.image forState:UIControlStateNormal];
    btn.tag = i;
    [btn addTarget:self action:@selector(didSelectTabrBarItem:) forControlEvents:UIControlEventTouchUpInside];
    [tab addSubview:btn];

    [self.scrollView addSubview:tab];
    i++;

    if(self.selectedViewController == nil)
        [self setSelectedIndex:0];
}

Я переопределяю setSelectedindex / ViewController, так как мне нужно дополнительное рисование.

-(void)setSelectedViewController:(UIViewController *)selectedViewController
{
    [super setSelectedViewController:selectedViewController];
    [self startTimer];
}

-(void)setSelectedIndex:(NSUInteger)selectedIndex
{
    [super setSelectedIndex:selectedIndex];
    [self startTimer];
}

Проблема в том, что когда я нажимаю кнопку 5, 6 или 7, контроллер табуляции открывает окно «Больше». Как мне избавиться от этого и заставить последние три элемента действовать как другие? - Может ли это быть вызов супер?

Мое предположение было бы полностью убить UITabBarController и реализовать мою собственную пользовательскую панель вкладок. Но возможно ли отключить меню more и сделать так, чтобы UITabBarController выбирал пункты 5, 6 и 7 как обычно?

Ответы на вопрос(4)

Ваш ответ на вопрос