Adicionar a visualização de um controlador de exibição filho a uma subvisualização do controlador de exibição pai
Eu quero adicionar um tableViewController como um controlador de exibição filho de um containerViewController (mostrado abaixo). De acordo com a AppleExibir guia de programação do controlador Eu posso conseguir isso com as seguintes linhas de código dentro do meu containerViewController:
[self addChildViewController:tableViewController];
[self.view addSubview:tableViewController.view];
[tableViewController didMoveToParentViewController:self];
Na verdade, isso funciona bem. Agora o problema é que eu não quero adicionar a exibição tableViewController como uma subvisão da visão raiz do containerViewController. Em vez disso, quero adicioná-lo como uma subvisualização do containerView (ver imagem), que é uma subvisão da visualização raiz do containerViewController. Então eu mudei o código acima da seguinte forma:
[self addChildViewController:tableViewController];
[self.contentView addSubview:tableViewController.view];
[tableViewController didMoveToParentViewController:self];
Agora, quando eu inicio o aplicativo, ele cai imediatamente com esse erro:
Encerrando o aplicativo devido à exceção não identificada 'UIViewControllerHierarchyInconsistency', razão: 'child view controller: deve ter o controlador de exibição pai: mas o pai real é:'
Qual é o problema aqui? Não é possível adicionar uma visualização de childViewController a um específicosub vista do seu containerViewController? Ou como posso conseguir isso sem um erro na hierarquia do controlador de exibição?