比方说,我有一个名为 VC2的视图控制器类的实例。在 VC2中,有一个“取消”按钮,它会自动解除。但是当“取消”按钮触发时,我无法检测或接收任何回调。VC2是个黑匣子。
视图控制器(称为 VC1)将使用 presentViewController:animated:completion:
方法呈现 VC2。
当 VC2被解雇时,VC1必须检测哪些选项?
编辑: 从@rory mckinnel 的评论和@NicolasMiari 的回答中,我尝试了以下方法:
在 VC2中:
-(void)cancelButton:(id)sender
{
[self dismissViewControllerAnimated:YES completion:^{
}];
// [super dismissViewControllerAnimated:YES completion:^{
//
// }];
}
在 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:^{
//
// }];
}
但是 VC1里的 dismissViewControllerAnimated
没有被叫到。