zoukankan      html  css  js  c++  java
  • iOS 8显示应用角标

    1. iOS 8角标显示须要用户授权,可在应用启动时请求授权:

        - (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions
         {
            if ([[UIDevice currentDevice].systemVersion doubleValue] >= 8.0)
            {
                UIUserNotificationType types = UIUserNotificationTypeBadge | UIUserNotificationTypeSound | UIUserNotificationTypeAlert;
                UIUserNotificationSettings *notificationSettings = [UIUserNotificationSettings settingsForTypes:types categories:nil];
                [[UIApplication sharedApplication] registerUserNotificationSettings:notificationSettings];
            }
            else
            {
                UIRemoteNotificationType types = UIUserNotificationTypeBadge | UIUserNotificationTypeSound | UIUserNotificationTypeAlert;
                [[UIApplication sharedApplication] registerForRemoteNotificationTypes:types];
            }
        
            return YES;
        }

    2. 显示角标:

    - (void)showBadgeNumbers
    {
       // Request Method(服务器返回指定数据datas)

       // 若无新数据
    if ([datas isEqualToString:@"0"]) { [self cleanBadgeNumber]; } else { // tabBarItem右上角显示未读数 self.tabBarItem.badgeValue = datas; // 应用右上角显示未读数 [UIApplication sharedApplication].applicationIconBadgeNumber = datas.intValue; } }

    3. 清空角标:

    - (void)cleanBadgeNumber
    {
        // 清空tabBarItem右上角未读数
        self.tabBarItem.badgeValue = nil;
        // 清空应用右上角未读数
        [UIApplication sharedApplication].applicationIconBadgeNumber = 0;
    }

    4. 设置定时器自动调用

    - (void)viewDidLoad 
    {
    [super viewDidLoad];
       // 显示未读数 NSTimer *timer = [NSTimer scheduledTimerWithTimeInterval:30 target:self selector:@selector(showBadgeNumbers) userInfo:nil repeats:YES]; // 加入Runloop [[NSRunLoop mainRunLoop] addTimer:timer forMode:NSRunLoopCommonModes]; }

    5. 应用进入后台继续调用

    - (void)applicationDidEnterBackground:(UIApplication *)application 
    {
    // 向操作系统申请后台运行资格, 后台运行时间受系统控制 __block UIBackgroundTaskIdentifier taskIdentifier = [application beginBackgroundTaskWithExpirationHandler:^{ // 后台运行时间已经结束 // 结束任务 [application endBackgroundTask:taskIdentifier]; }]; }
  • 相关阅读:
    第二阶段冲刺第二天
    第二阶段冲刺第一天
    第十四周学习进度条
    《探索需求-设计前的质量》阅读笔记六
    《探索需求-设计前的质量》阅读笔记五
    xxx征集系统项目目标文档
    《探索需求-设计前的质量》阅读笔记四
    《探索需求-设计前的质量》阅读笔记三
    将一台电脑上的虚拟机上的系统复制到另一台电脑的虚拟机上!!!and想询问大神们问题的解决办法??
    《探索需求-设计前的质量》阅读笔记二
  • 原文地址:https://www.cnblogs.com/happyplane/p/4703572.html
Copyright © 2011-2022 走看看