Al presionar un controller de navigation después de que se presente un controller de vista modal

Tengo un controller de vista de pestaña que tiene un button así y cuando se presiona aparece un modal:

PostViewController *post = [[PostViewController alloc] init]; // [self.navigationController pushViewController:post animated:YES]; // Presentation [self presentViewController:post animated:YES completion:nil]; 

Cuando el modal está hecho, quiero descartarlo y presionar un controller de vista nuevo de la siguiente manera:

 ProfilesViewController *profile = [[ProfilesViewController alloc] init]; [self.navigationController pushViewController:profile animated:YES]; 

Pero no puedo hacerlo en el post vc como un modal. ¿Cómo hago esto?

Puedes intentar usar completionBlock .

CompletionBlock llama a CompletionBlock cuando se hace presentViewController.

 PostViewController *post = [[PostViewController alloc] init]; [con presentViewController:post animated:YES completion:^{ ProfilesViewController *profile = [[ProfilesViewController alloc] init]; [self.navigationController pushViewController:profile animated:YES]; }]; 

Más información sobre presentViewController:animated:completion: Apple Doc

finalización: el bloque que se ejecutará una vez finalizada la presentación. Este bloque no tiene valor de retorno y no tiene parameters. Puede especificar nil para este parámetro.

¿Dose su controller de vista de tabs embedded en un UINavigationController? Si no lo ha hecho, por supuesto no puede usar self.navigationController.