ios - 当presentViewController关闭不工作时

时间:2015-03-06 11:15:53

标签: ios qlpreviewcontroller presentviewcontroller

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

当presentViewController完全关闭或按下完成/返回按钮时,我需要运行一个代码(让我们说一个警告"我关闭")。

我不想使用完成块,因为这会在打开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

有人可以帮忙吗?

1 个答案:

答案 0 :(得分:1)

完成块不起作用,因为延迟是短路的?尝试将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
}