Quiero hacer un controlador de barra de pestañas y un controlador de navegación mediante programación. Mi código funciona hasta el momento y muestra una barra de pestañas en la parte inferior, pero OptionViewController no dice nada (sin título) en el botón de la segunda barra de pestañas. Lo curioso es que cuando hago clic en el botón sin nada, aparece el título (y también su vista). ¿Puede alguien explicarme qué estoy haciendo mal? He intentado utilizar el siguiente código:Agregar un controlador TabBar programmatically
- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions
{
// Override point for customization after application launch.
[self.window makeKeyAndVisible];
NSMutableArray *tabItems = [[NSMutableArray alloc] initWithCapacity:2];
DefaultViewController *dvc = [[DefaultViewController alloc] init];
UINavigationController *dvc_nc = [[UINavigationController alloc] initWithRootViewController:dvc];
[tabItems addObject:dvc_nc];
[dvc release];
[dvc_nc release];
OptionsViewController *ovc = [[OptionsViewController alloc] initWithStyle:UITableViewStyleGrouped];
UINavigationController *ovc_nc = [[UINavigationController alloc] initWithRootViewController:ovc];
[tabItems addObject:ovc_nc];
[ovc release];
[ovc_nc release];
UITabBarController *tbc = [[UITabBarController alloc] init];
tbc.viewControllers = tabItems;
self.tabController = tbc;
[tabItems release];
[tbc release];
[self.window addSubview:self.tabController.view];
return YES;
}
Creo que es necesario agregar UINavigationController como una vista en sub el controlador de Barra de pestañas con la superclase de clases de control como UINavigationController –
el problema es solo el título que falta, ¿verdad? ¿Dónde estás configurando el 'título' de tu' OptionsViewConbtroller'? Si está configurando el título no en su método 'init', entonces el TabBarController solo lee un título vacío de su OptionsVC. Supongo que estás estableciendo la propiedad del título en sth. como 'viewDidLoad'? – thomas
Supongo que no, porque esto: [tbc.view addSubview: ovc_nc.view]; hace que la pantalla esté completamente vacía! – Mark