ios - 当 presentViewController 关闭时不工作

ios - when presentViewController is closed not working

我正在使用工作正常的 presentViewController,见下文:

当 presentViewController 完全关闭或按下 done/back 按钮时,我需要 运行 一个代码(可以说是一个警报 "I'm closed")。

我不想使用完成块,因为它会在 presentViewController 打开后立即触发。在 presentViewController 关闭或关闭后,我基本上需要能够 运行 一些代码。

代码:

QLPreviewController* myPopup = [[QLPreviewController alloc] init];
    myPopup.delegate = weakSelf;
    myPopup.dataSource = weakSelf;

    UIViewController* root = [[[UIApplication sharedApplication] keyWindow] rootViewController];

    [root myPopup animated:YES  completion:nil ];
    //here put alert when it's closed or dismissed

有人可以帮忙吗?

完成块不起作用,因为延迟太短了?尝试将 dispatch_after 放入完成块并设置您需要的延迟。

您可以在此处查看代码示例http://soulwithmobiletechnology.blogspot.co.uk/2012/07/tutorial-how-to-use-qlpreviewcontroller.html

很快:

QLPreviewController *previewController=[[QLPreviewController alloc]init];
previewController.delegate=self;
previewController.dataSource=self;
[self presentModalViewController:previewController animated:YES];

和代表:

- (void)previewControllerDidDismiss:(QLPreviewController *)controller {
// display alert
}