Agregar la vista de un controlador de vista secundario a una subvista del controlador de vista principal
Quiero agregar un tableViewController como controlador de vista secundario de un containerViewController (se muestra a continuación). De acuerdo con la de AppleVer la guía de programación del controlador Puedo lograr esto con las siguientes líneas de código dentro de mi containerViewController:
[self addChildViewController:tableViewController];
[self.view addSubview:tableViewController.view];
[tableViewController didMoveToParentViewController:self];
De hecho, eso funciona bien. Ahora el problema es que no quiero agregar la vista tableViewController como una subvista de la vista raíz del containerViewController. En su lugar, quiero agregarlo como una subvista del containerView (ver imagen) que en sí es una subvista de la vista raíz del containerViewController. Así que cambié el código anterior de la siguiente manera:
[self addChildViewController:tableViewController];
[self.contentView addSubview:tableViewController.view];
[tableViewController didMoveToParentViewController:self];
Ahora, cuando lanzo la aplicación, se bloquea inmediatamente con este error:
Aplicación de terminación debido a la excepción no detectada 'UIViewControllerHierarchyInconsistency', razón: 'controlador de vista secundario: debe tener controlador de vista principal: pero el padre real es:'
¿Cuál es el problema aquí? ¿No es posible agregar una vista childViewController a unsub vista de su containerViewController? ¿O cómo puedo lograr esto sin un error en la jerarquía del controlador de vista?