UIApplication
什么是UIApplication?
*UIApplication 对象是应用程序的象征。每一个应用都有⾃己的UIApplication对象,这个对象是系统自动帮我们创建的, 它是一个单例对象。一个iOS程序启动后创建的第一个对象就是UIApplication对象
我们只能通过[UIApplication sharedApplication]获得这个单例对象,不能够手动去创建它*UIApplication作用?
利⽤用UIApplication对象,能进⾏一些应用级别的操作;可以设置应用程序图标右上角的红色提醒数字,设置联⽹指示器的可见性;可以设置应用程序的状态栏,进行应用之间的跳转.
模仿UIApplication单例.
要求:程序一启动就创建创建对象.
*创建的对象只能通过share的方式获取对象.
不能够进行alloc 操作,当执行alloc时, 程序发生崩溃*程序一启动的时候就创建对象.
当类被加载到内存的时候就会调用load的方法,它会比main方法优先调用
static Persion *_instance;
- (void)load{
想要保存创建的对象, 要用成员属性,但是现在是类方法, 没有办法访问成员属性. 所以搞了一个static的静态变量进行保存
创建对象
_instance = [[self alloc] init];
}
- 保证调用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 alloc];
}
- 通过share方式获取对象
+ (instancetype)sharePersion {
return _instance
}
UIApplication功能
- 设置应用提醒数字