关于UIApplication的介绍
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 alloc];
}
3.通过share方式获取对象
+ (instancetype)sharePersion {
return _instance
}
UIApplication功能
1.设置应用提醒数字
获取UIApplication对象
UIApplication *ap = [UIApplication sharedApplication];
在设置之前, 要注册一个通知,从ios8之后,都要先注册一个通知对象。才能够接收到提醒。 UIUserNotificationSettings *notice =
[UIUserNotificationSettings settingsForTypes:UIUserNotificationTypeBadge categories:nil];
注册通知对象
[ap registerUserNotificationSettings:notice];
设置提醒数字
ap.applicationIconBadgeNumber = 20;
设置提醒数字为20效果图
非常好我支持^.^
(0) 0%
不好我反对
(0) 0%