xCode Как программно вызвать UITabbar из вкладки / подпредставления / подкласса с помощью UIButton? - PullRequest
0 голосов
/ 17 октября 2011

В моем приложении UITabbar (созданном с использованием xCode) у меня есть 6 кнопок вкладок. На первой вкладке у меня есть 5 UIButttons, которые должны загружать другие 5 соответствующих вкладок при нажатии на кнопки. Первый - это указатель / домашняя страница, другие - это разные модули с файлом nib для каждого из модулей.

Мой вопрос: при нажатии на кнопку 1 должна загружаться панель вкладок 1 (индекс начинается с 0 для приложения с вкладками), а при нажатии на кнопку 2 она должна загружать панель вкладок 2 и т. Д.

В действии IB я написал следующий код

-(IBAction)Button1:(id)sender
{
    firstViewController = [[FirstViewController alloc] initWithNibName:@"FirstView"bundle:nil];  

    [self.view addSubview:firstViewController.view];

}

Насколько мне известно, это рисует (добавляет) firstViewController на панели вкладок 0 вместо вызова индекса панели вкладок 1.

Должен ли я попробовать

- (void)tabBarController:(UITabBarController *)tabBarController didSelectViewController:(UIViewController *)viewController;

Если так, то где мне написать это?

1 Ответ

0 голосов
/ 17 октября 2011

Создайте ParentTabbarController, который будет производным от UITabBarController.Теперь поместите субконтроллер в этот ParentTabBarController.Определите метод в ParentTabBarController, который позаботится о размещении представления вкладок в соответствующей панели вкладок.

Из вашего действия на нажатие кнопки вам нужно пропинговать метод родительского контроллера с аргументом (может быть индексом, например 1,2 и т. Д.).) который будет размещать вкладку на основе предоставленного индекса.Я надеюсь, что это поможет вам определить место для размещения вышеуказанного кода.

...