UItabBar изменение контроллеров просмотра

У меня возникают некоторые трудности при изменении контроллеров панели вкладок. В основном у меня UITabBarController с 3 контроллерами. Первый раз при запуске приложения. Я меняю один контроллер следующим образом:

NSMutableArray *muteArray = [[NSMutableArray alloc] init];
FirstPage *online;

if (UI_USER_INTERFACE_IDIOM() == UIUserInterfaceIdiomPad)
{

    online =[[FirstPage alloc] initWithNibName:nil bundle:nil];


}else{

    online =[[FirstPage alloc] initWithNibName:nil bundle:nil];
}

//adding all controllers of tab bar to array
[muteArray addObjectsFromArray:_navigationCotroller.viewControllers];
online.tabBarControllers = [muteArray copy];
//replacing object of login controller to after login controller
[muteArray replaceObjectAtIndex:1 withObject:online];


[online release];

//setting new controllers to tab bar
[_navigationCotroller setViewControllers:muteArray animated:YES];

[muteArray release];

Затем в контроллере FirstPage я делаю некоторые изменения и нажимаю ОК. Теперь мне нужно снова сменить контроллеры, сделав следующее:

NSLog(@"Before change Tab Bar cotrollers = %@",self.tabBarController.viewControllers);

[self.tabBarController setViewControllers:_tabBarControllers animated:YES];

NSLog(@"After change Tab Bar cotrollers = %@",self.tabBarController.viewControllers);

[self.tabBarController.tabBarController setSelectedIndex:1];

_tabBarControllers - это массив контроллеров, которые я сохранил при запуске приложения.

Этот код изменяет контроллеры, но когда я хочу открыть измененный контроллер с помощью setSelectedIndex, он не работает.

Есть идеи?

И распечатайте это:

Перед изменением Контроллеры панели вкладок = NULL После изменения Контроллеры панели вкладок = NULL

6
задан Streetboy 16 January 2012 в 10:22
поделиться