Digamos que tengo una instancia de una clase de controlador de vista llamada VC2. En VC2, hay un botón "cancelar" que se cerrará. Pero no puedo detectar ni recibir ninguna devolución de llamada cuando el botón "cancelar" se activó. VC2 es una caja negra.
Un controlador de vista (llamado VC1) presentará VC2 usando el presentViewController:animated:completion:
método.
¿Qué opciones tiene VC1 para detectar cuándo se descartó VC2?
Editar: desde el comentario de @rory mckinnel y la respuesta de @NicolasMiari, probé lo siguiente:
En VC2:
-(void)cancelButton:(id)sender
{
[self dismissViewControllerAnimated:YES completion:^{
}];
// [super dismissViewControllerAnimated:YES completion:^{
//
// }];
}
En VC1:
//-(void)dismissViewControllerAnimated:(BOOL)flag completion:(void (^)(void))completion
- (void)dismissViewControllerAnimated:(BOOL)flag
completion:(void (^ _Nullable)(void))completion
{
NSLog(@"%s ", __PRETTY_FUNCTION__);
[super dismissViewControllerAnimated:flag completion:completion];
// [self dismissViewControllerAnimated:YES completion:^{
//
// }];
}
Pero el dismissViewControllerAnimated
en el VC1 no fue llamado.