zoukankan      html  css  js  c++  java
  • IOS 开发过程中的 消息通知 小红点

    大致分为两种方法:系统方法和自定义方法

    系统方法:

    系统自带的方法可以显示具体的消息数量,这个就是苹果设备常见的小红点。实现思路如下:

    NSArray *tabBarItems = self.navigationController.tabBarController.tabBar.items;

    UITabBarItem *personCenterTabBarItem = [tabBarItems objectAtIndex:3];

    personCenterTabBarItem.badgeValue = @"2";//显示消息条数为 2

    效果如下图所示:

    系统小红点

    自定义方法:

    自己将小红点图标放在想要显示的位置,控制UIImageView的hidden属性即可。实现思路如下:

     

    UIImageView *dotImage = [[UIImageViewallocinitWithImage:[UIImageimageNamed:@"red_point_small"]];

            dotImage.backgroundColor = [UIColorclearColor];

            CGRect tabFrame =self.navigationController.tabBarController.tabBar.frame;

            CGFloat x =ceilf(0.9 * tabFrame.size.width);

            CGFloat y =ceilf(0.1 * tabFrame.size.height);

            dotImage.frame =CGRectMake(x, y, 8,8);

            [self.navigationController.tabBarController.tabBaraddSubview:dotImage];

    效果如下图所示:

    自定义小红点
     
     
     

    上面提到的方法,基本上可以放在ViewController的任何位置,不过还有一种情况做不到,就是App的桌面应用图标上的消息提示。

    ————————————————————————————————————

    App的桌面应用图标上的消息提示,实现思路如下:

            if ([[XWGlobalHelper systemVersionintValue] > 7.99 && [[XWGlobalHelper systemVersionintValue] <9.001) {

                 //IOS8 需要 设置

    UIUserNotificationSettings *settings = [UIUserNotificationSettings settingsForTypes:UIUserNotificationTypeBadge categories:nil];

                [[UIApplication sharedApplicationregisterUserNotificationSettings:settings];

            }

            [UIApplication sharedApplication].applicationIconBadgeNumber = 3;

     

  • 相关阅读:
    1、C#多线程基础理论
    ASP.NET MVC过滤器学习笔记
    C# 虚方法
    asp.net面试题总结1(未完待续。。。。)
    Linux高级调试与优化——进程管理和调度
    Linux高级调试与优化——内存管理
    Linux高级调试与优化——用户态堆
    Linux高级调试与优化——信号量机制与应用程序崩溃
    Linux高级调试与优化——gdb调试命令
    Nor Flash芯片特性分析
  • 原文地址:https://www.cnblogs.com/fengmin/p/5228955.html
Copyright © 2011-2022 走看看