Pergunta

Eu criei um uitabbarcontroller como este:

InfoViewController *iVC = [[InfoViewController alloc] init];
self.infoViewController = iVC; // retain property

UITabBarItem *tabBarItem = [[UITabBarItem alloc] initWithTabBarSystemItem:UITabBarSystemItemSearch tag:0];
self.infoViewController.tabBarItem = tabBarItem;





UINavigationController *nc = [[UINavigationController alloc] initWithRootViewController:myVC];
self.navigationController = nc;

UITabBarItem *tabBarItem = [[UITabBarItem alloc] initWithTabBarSystemItem:UITabBarSystemItemMostRecent tag:1];
self.navigationController.tabBarItem = tabBarItem;






UITabBarController *tbc = [[UITabBarController alloc] init];

NSArray* controllers = [NSArray arrayWithObjects:self.infoViewController, self.navigationController, nil];

self.tabBarController = tbc; // retain property!

self.tabbarcontroller.viewControllers = controladores; [liberação do TBC];

Problema: vejo uma barra de guia preta na parte inferior e uma área de conteúdo branco. O primeiro controlador de exibição na matriz tem uma cor vermelha de fundo. Portanto, deve parecer vermelho.

A barra da guia não mostra itens, está vazia.

Qual pode ser o problema? Não uso arquivos NIB ... sem avisos, sem erros, nada registrado no console. Apenas barra de guia vazia.

Foi útil?

Solução

Você não está perdendo:

self.tabBarController.viewControllers = controllers;

EDITAR:

Bem, além disso, não vejo nada no código incluído que está errado, então isso me leva a pensar que algo mais deve estar errado. Algumas opções:

  1. Tem certeza que o self.tabbarcontroller aponta para qualquer coisa (não é nulo)?
  2. Tem certeza de que está apontando para o mesmo uitabcontroller que você está vendo?
  3. Tem certeza de que os controladores que você está criando são criados corretamente? Tente exibi -los independentemente do tabbar com

    self.tabbarcontroller PresenteModalViewController: IVC Animated: Sim];

  4. O UitabController é criado a partir de uma ponta? Se for colocado um NSLog no initWithnibName ou AwakeFromnib para garantir que seja chamado antes do seu código e não seja chamado novamente após o seu código.

Comece com isso, se ninguém mostrar alguma indicação de que algo mais está errado, posso pensar em mais algumas coisas para tentar.

Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top