我想清除應用程序之前的圖被切換遠離,以改變發射圖像,使得下一次被輸入的應用程式它不會顯示某些不安全的數據。智取截圖爲iOS 4
iOS 4提供了applicationDidEnterBackground
和applicationWillResignActive
...但是,在我有機會清除視圖之前,這些視圖都不能阻止截圖。
我想清除應用程序之前的圖被切換遠離,以改變發射圖像,使得下一次被輸入的應用程式它不會顯示某些不安全的數據。智取截圖爲iOS 4
iOS 4提供了applicationDidEnterBackground
和applicationWillResignActive
...但是,在我有機會清除視圖之前,這些視圖都不能阻止截圖。
-applicationDidEnterBackground
並截圖之前被調用。原來我只是不恰當地隱藏了我的觀點。
一個簡單的方法來清除的觀點是設置在我UIView
的隱藏屬性。
當試圖通過同時按下主屏幕按鈕和電源按鈕(這是設備的右上方)捕獲截圖時,未在iOS(使用iOS 6)應用程序中獲取任何應用程序委託方法。請幫忙。 – kushalrshah 2013-07-11 09:34:41
我想補充的代碼片段使用的初始化宣佈一個完整的背景圖像,並將它們隱藏一個快速的解決這個問題。
您可以通過註冊的通知做的每個視圖的特定內容的更sofisticated隱藏,並在視圖隱藏特定視圖(標籤)要隱藏。
另一個解決方案是檢查哪個ViewController中被示出,該視圖控制器的不顯示的數據的數據視圖的屏幕截圖differente之間切換。
最簡單的方法:
- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions {
UIImageView *backgroundView_ = [[UIImageView alloc] initWithImage:[UIImage imageNamed:@"Default.png"]];
self.backgroundView = backgroundView_;
[backgroundView_ release];
// Add other controllers views
// ...
[self.window bringSubviewToFront:self.backgroundView];
self.backgroundView.hidden = YES;
[self.window makeKeyAndVisible];
}
- (void)applicationDidBecomeActive:(UIApplication *)application {
self.backgroundView.hidden = YES;
}
- (void)applicationDidEnterBackground:(UIApplication *)application {
self.backgroundView.hidden = NO;
}
你確定嗎? '-applicationDidEnterBackground:'在拍攝截圖之前被調用。 – kennytm 2010-07-28 10:15:23
你是對的。我的錯。 – akaru 2010-07-29 01:55:31