ActivityViewController:弹出窗口关闭时的completedHandler

问题描述

ActivityViewController

我想在ActivityViewController关闭调用完成处理程序。这是我的实现:

activityViewController.popoverPresentationController?.sourceRect = CGRect(x: 150,y: 150,width: 0,height: 0)
activityViewController.excludedActivityTypes = [
    UIActivity.ActivityType.postToWeibo,UIActivity.ActivityType.print,UIActivity.ActivityType.assignToContact,UIActivity.ActivityType.savetoCameraRoll,UIActivity.ActivityType.addToReadingList,UIActivity.ActivityType.postToFlickr,UIActivity.ActivityType.postToVimeo,UIActivity.ActivityType.postToTencentWeibo,UIActivity.ActivityType.postToFacebook
]
activityViewController.dismiss(animated: true,completion: {
    completion()
})

可以吗?

提前谢谢

解决方法

如果您查看UIActivityViewController的文档(实际上应该做的第一件事),您会发现它具有completionWithItemsHandler属性,可以做到这一点:

在活动视图控制器之后执行的完成处理程序 被解雇了。

Link to reference.