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