たとえば、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:^{
//
// }];
}
しかし、dismissViewControllerAnimated
VC1のは呼び出されていませんでした。