, Solo debe tener un controlador de vista para controlar la escena. Sin embargo, este viewController puede tener otros dos controladores de vista que controlan subvistas particulares en su escena. Para hacer esto, crea propiedades en su escena viewController, en su caso una para su tableViewController y otra para su vista. Me gusta mantener las cosas juntas, así que hago estas dos salidas viewControllers y las creo en el constructor de interfaces. Para crearlos en el constructor de interfaz, extraiga un Objeto de la biblioteca de Objetos y establezca su tipo al viewController correspondiente. Conéctelo al tomacorriente apropiado que acaba de crear en viewController de su escena. Nota: esto es importante; de lo contrario, viewController se liberará si usa ARC y bloquea su aplicación. A continuación, enganche estos viewControllers a la vista que desea que controlen y listo.
Como alternativa, puede crear instancias y saltar su vistaControladores en su vista de escenasControlador si lo prefiere.
Espero que esto ayude.
Editar: Si esto no es una buena idea y realmente va en contra de la HIG, debe mantener solo un ViewController para cada pantalla de contenido y en su lugar intentar crear una clase de vista adecuada y tener el control de vista única con las interacciones entre los diversos puntos de vista.
Tengo un problema con su ejemplo. El evento viewViewDownload de CustomViewController nunca se activa ... ¿Es normal? ¿Hay alguna manera de arreglar eso? De lo contrario, esta es una muy buena publicación! Gracias. –