如何在应用程序运行后收到通知?

时间:2014-04-01 08:10:31

标签: ios

我需要保护我的应用程序在转到后台之前不要截屏。我在applicationDidEnterBackground:添加了一个黑色视图。但是当我在iOS7模拟器中检查后台应用程序时,它没有显示黑色图像,而是显示应用程序本身,如图所示。我怎么解决这个问题?如果我在应用程序运行之前收到通知,则此问题可能会得到解决任何帮助将不胜感激。 enter image description here

2 个答案:

答案 0 :(得分:0)

您将在AppDelegate的applicationDidEnterBackground

中收到回调

答案 1 :(得分:0)

在整个应用中实现所需功能的最佳方法是让您的应用导航到完全黑色的UIViewController。这样,当您长按主页按钮并查看后台应用程序时,您将看不到任何内容。

这两个功能可以解决问题:

- (void) applicationDidEnterBackground:(UIApplication *)application
{
    //navigate to the black view controller
    BlackViewController *controller = [[BlackViewController alloc] init];

    [yourNavigationController pushViewController:viewController animated:yourAnimationSettings];

    [controller release];   
}

- (void) applicationWillEnterForeground:(UIApplication *)application
{
    //pop the black view controller so the user won't be bothered with it
    if(/*Check if your BlackViewController is the top of your navigationController stack*/)
    {
         [yourNavigationController popViewControllerAnimated:yourAnimationSettings];
    }
}