我正在使用UIActivityViewController。当用户将我的应用程序发送到iPhone上的后台(当他们按下主页按钮等)时,我需要删除衍生的UIActivityViewController以及可能来自它的所有孩子。这就是说,如果用户选择" Mail"或"消息" UIActivityViewController上的选项我需要删除由于此操作而产生的视图(视图控制器?)。
我尝试了以下代码,发现它只删除了原始的UIActivityViewController,并且没有产生任何其他视图。
[_myActivityController dismissViewControllerAnimated:NO completion:nil];
答案 0 :(得分:1)
在appDelegate applicationDidEnterBackground中尝试此操作。关闭显示的最顶层视图控制器。希望这会帮助你。
- (void)applicationDidEnterBackground:(UIApplication *)application {
UIViewController *mytopController = [UIApplication sharedApplication].keyWindow.rootViewController;
while (mytopController.presentedViewController)
{
mytopController = mytopController.presentedViewController;
[mytopController dismissViewControllerAnimated:NO completion:nil];
}
}