我试图阻止Apple应用程序暂挂到后台时截屏当前屏幕内容的实现。我发现了一些代码,但它带有一个问题。它的作用是清除屏幕上的按键窗口,因此当拍摄快照时,它是空白屏幕。这是功能的代码片段:隐藏KeyWindow导致一个空白的屏幕截图
- (void)applicationWillResignActive:(UIApplication *)application
{
[ UIApplication sharedApplication ].keyWindow.hidden = YES;
}
- (void)applicationDidEnterBackground:(UIApplication *)application
{
[ UIApplication sharedApplication ].keyWindow.hidden = YES;
}
与上面的代码麻烦的是,当应用程序返回到前台,认为走了,因为它已经成为隐藏的,我不能用一个简单的
取消隐藏[ UIApplication sharedApplication ].keyWindow.hidden = NO;
in applicationWillEnterForeground方法的应用程序委托。有没有人知道一种方法来恢复隐藏的视图,一旦我将它隐藏在后台方法中?现在这是一个黑屏,因为视图已被隐藏。当你隐藏一个密钥窗口,然后回到背景之前会发生什么。那是你在不再是关键窗口之前隐藏的关键窗口?任何人都可以指出我正确的方向吗?
谢谢
你在说什么“屏幕截图”?你的意思是一个窗口在重新打开时被恢复的方式?你想看到什么样的行为? – rdelmar
我基本上希望在应用程序返回时清除所有内容的空白屏幕,以显示瞬间显示的内容(iOS采用后台激活时的快照)。默认情况下,此快照是应用进入后台之前的最后一个屏幕。我希望这个最后一个屏幕在苹果可以拍摄快照之前没有任何内容 –