zoukankan      html  css  js  c++  java
  • 判断应用在前台还是在后台

    可以这样 判断

    #import "AppDelegate.h"

     @interface AppDelegate () {

        BOOL isActive;

    }

    @end

    @implementation AppDelegate

    //进入后台

    - (void)applicationDidEnterBackground:(UIApplication *)application {

        isActive = NO;

    }

    //进入前台 

    - (void)applicationWillEnterForeground:(UIApplication *)application {

      // Called as part of the transition from the background to the inactive state;

      // here you can undo many of the changes made on entering the background.

    }

     //处于活动状态

    - (void)applicationDidBecomeActive:(UIApplication *)application {

        isActive = YES;

    }

    @end

     

    这样就可以根据isActive来控制一些通知的显示。

     

    如:

    - (void)application:(UIApplication *)application
        didReceiveLocalNotification:(UILocalNotification *)notification {
    
      if (isActive) {
        return;
      } else {
        HDFileTableViewController *vc = [[HDFileTableViewController alloc] init];
        vc.upLoad = NO;
        vc.directoryPath = [[NSSearchPathForDirectoriesInDomains(
            NSCachesDirectory, NSUserDomainMask, YES) lastObject]
            stringByAppendingPathComponent:@"附件"];
        UINavigationController *navc =
            [[UINavigationController alloc] initWithRootViewController:vc];
    
        [self.window.rootViewController presentViewController:navc
                                                     animated:YES
                                                   completion:nil];
      }
    }
  • 相关阅读:
    设计模式之桥接模式
    设计模式之适配器模式
    设计模式之建造者模式
    设计模式之原型设计
    Exception in thread "main" java.lang.UnsupportedOperationException
    设计模式7大原则
    设计模式之单例模式
    初识python
    消息传递:发布订阅模式详解
    哨兵机制(Redis Sentinel)
  • 原文地址:https://www.cnblogs.com/hd1992/p/5130605.html
Copyright © 2011-2022 走看看