我試圖阻止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採用後臺激活時的快照)。默認情況下,此快照是應用進入後臺之前的最後一個屏幕。我希望這個最後一個屏幕在蘋果可以拍攝快照之前沒有任何內容 –