我正在使用 UIActivityViewController。当用户将我的应用程序发送到 iPhone 的后台时(当他们按下主页按钮等时),我需要删除生成的 UIActivityViewController 以及可能来自它的任何子项。这就是说,如果用户在 UIActivityViewController 上选择“邮件”或“消息”选项,我需要删除作为此操作的结果生成的 View ( View Controller ?)。
我尝试了以下代码,发现它只删除了原始的 UIActivityViewController 而没有它生成的任何其他 View 。
[_myActivityController dismissViewControllerAnimated:NO completion:nil];
最佳答案
在您的 appDelegate applicationDidEnterBackground 中试试这个。关闭显示的最顶层 View Controller 。希望这会帮助你。
- (void)applicationDidEnterBackground:(UIApplication *)application {
UIViewController *mytopController = [UIApplication sharedApplication].keyWindow.rootViewController;
while (mytopController.presentedViewController)
{
mytopController = mytopController.presentedViewController;
[mytopController dismissViewControllerAnimated:NO completion:nil];
}
}
关于ios - 关闭 UIActivityViewController 的衍生 subview ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36275189/