UIApplication详细介绍

UIApplication是iOS应用程序的核心,作为单例存在,负责系统事件处理和应用状态管理。本文介绍了如何模仿UIApplication单例,以及其功能,如设置应用提醒数字、连网状态和状态栏。此外,还详细讨论了UIApplication的代理机制,包括应用程序的生命周期事件和系统事件的处理。
摘要由CSDN通过智能技术生成

UIApplication

  • 什么是UIApplication?

    • UIApplication对象是应⽤程序的象征.
      每一个应用都有⾃己的UIApplication对象,这个对象是系统自动帮我们创建的, 它是一个单例对象.
      一个iOS程序启动后创建的第一个对象就是UIApplication对象
      我们只能通过[UIApplication sharedApplication]获得这个单例对象,不能够手动去创建它.
  • UIApplication作用?

    • 利⽤用UIApplication对象,能进⾏一些应用级别的操作.
      可以设置应用程序图标右上角的红色提醒数字
      设置联⽹指示器的可见性
      可以设置应用程序的状态栏,进行应用之间的跳转.

模仿UIApplication单例.

  • 要求:程序一启动就创建创建对象.
    创建的对象只能通过share的方式获取对象.
    不能够进行alloc 操作,当执行alloc时, 程序发生崩溃
  • 1.程序一启动的时候就创建对象.
    • 当类被加载到内存的时候就会调用load的方法,它会比main方法优先调用
static Persion *_instance;
+ (void)load{
    想要保存创建的对象, 要用成员属性,但是现在是类方法, 没有办法访问成员属性. 所以搞了一个static的静态变量进行保存
    创建对象
    _instance = [[self alloc] init];
}
  • 2.保证调用alloc时会产⽣生异常, 重写系统的是alloc方法
   +(instancetype)alloc {
    当调用alloc方法时,先查看一下_instance有没有值,如果已经有值的话,直接抛出异常.
    if(_instance) {
        NSException *exception = [NSException exceptionWithName: @"NSInternalInconsistencyException"
                                                         reason:
        @"There can only be one Persion instance." userInfo:nil]; 抛出异常
        [exception raise];
    }

    保持系统的做法.
    return [super
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值