Passe dados pelo controlador de visualização, controlador de barra de guias, controlador de navegação e para visualizar o controlador

Provavelmente isso é algo realmente simples de conseguir, mas eu sou novo na programação para iOS e parece que estou preso.

Então, basicamente, eu tenho um aplicativo com guias. Decidi que queria uma barra de navegação, além da barra de guias. Para fazer isso, coloquei o controlador da barra de guias e, em seguida, adicionei meus controladores de exibição e incorporados a um controlador de navegação para cada controlador de exibição, que é conectado à barra de guias.

Minha hierarquia no storyboard se parece com isso:

Ver ControladorControlador da barra de guiasControlador de NavegaçãoVer ControladorControlador de NavegaçãoVer Controlador

A parte em que estou preso aqui é ao tentar passar dados do primeiro View Controller e para qualquer um dos outros View Controllers. Antes de adicionar os controladores de navegação, eu estava usando o método prepareForSegue para passar os dados, assim:

- (void)prepareForSegue:(UIStoryboardSegue *)segue sender:(id)sender
{
    if ([[segue identifier] isEqualToString:@"logged"])
    {
        UITabBarController *tabar=segue.destinationViewController;
        SecondViewController *svc=[tabar.viewControllers objectAtIndex:1];
        svc.groupArray = [(NSArray*)sender objectAtIndex:0];
        svc.userArray = [(NSArray*)sender objectAtIndex:1];
        svc.taskArray = [(NSMutableArray*)sender objectAtIndex:2];
        svc.selfArray = [(NSMutableArray*)sender objectAtIndex:3];
        [tabar setSelectedIndex:1];
    }
}

Como você pode ver, eu estava passando os dados para o meu segundo controlador de exibição e defina o índice da barra de guias como 1 usando o método performSegueWithIdentifier, pois queria que a segunda página fosse aberta. Tudo isso estava funcionando bem, até que eu introduzi os Controladores de Navegação no meu código, já que quero barras de navegação. Foi quando tudo praticamente quebrou. Se eu tentar executar o código como está, o aplicativo trava com a seguinte saída no console:

[UINavigationController setGroupArray:]: seletor não reconhecido enviado para a instância 0x7ffa6acec620

*** Finalizando o aplicativo devido à exceção não capturada 'NSInvalidArgumentException', motivo: '- [UINavigationController setGroupArray:]: seletor não reconhecido enviado à instância 0x7ffa6acec620'

Eu tentei mexer um pouco com o código, mas nada parece funcionar realmente. Estou muito confuso, e talvez uma dica na direção certa me ajude um pouco.

questionAnswers(2)

yourAnswerToTheQuestion