Solucioné esto mismo creando mi propio envase UIViewController para mímico la barra de la lengüeta
//
// UITabBarController.h
//
#import
@interface UITabBarController: UIViewController
{
*viewcontrollers de NSMutableArray;
currentViewIndex de la internacional;
}
selectedIndex del @property internacional (no atómica);
- initWithViewControllers (identificación): (NSArray *) viewControllers;
@end
//
// UITabBarController.m
//
#import “UITabBarController.h”
@implementation UITabBarController
- initWithViewControllers (identificación): (NSArray *) viewControllers
{
si (uno mismo = [init estupendo])
{
viewcontrollers = [[init del alloc de NSMutableArray]];
cuenta de la internacional = [cuenta de los viewControllers];
para (internacional i=0; i {
*vc de UIViewController = [objectAtIndex de los viewControllers: i];
[addObject de los viewcontrollers: vc];
}
currentViewIndex = 0;
[setSelectedIndex del uno mismo: 0];
}
uno mismo de vuelta;
}
- setSelectedIndex (vacío): índice (internacional)
{
// que quita la visión actual
*viewcontroller de UIViewController = [objectAtIndex de los viewcontrollers: currentViewIndex];
[viewcontroller viewWillDisappear: NINGUÌN];
[removeFromSuperview de viewcontroller.view];
[viewcontroller viewDidDisappear: NINGUÌN];
// que agrega la nueva visión
currentViewIndex = índice;
viewcontroller = [objectAtIndex de los viewcontrollers: currentViewIndex];
[viewcontroller viewWillAppear: NINGUÌN];
[addSubview de self.view: viewcontroller.view];
[viewcontroller viewDidAppear: NINGUÌN];
}
- selectedIndex (internacional)
{
currentViewIndex de vuelta;
}
- dealloc (vacío)
{
[dealloc de los viewcontrollers];
[dealloc estupendo];
}
@end