UIApplication 对象是 应用程序的象征
- 每一个应用都有自己的UIApplication 对象,而且是单例的。
- 通过【UIApplication shareApplication】可以获得这个单例对象
- 一个iOS程序启动后创建的第一个对象就是 UIApplication 对象
- 利用UIApplication 对象, 能进行一些应用级别的操作。
UIApplication 的常用属性
1. 设置应用程序 图标右上角的红色提醒数字。
@property (nonatomic) NSInteger applicationIconBadgeNumber ;
8323ED4A-36A2-464C-9458-24475F147791.png
2. 设置联网指示器的可见性
@property (nonatomic,getter = isNetworkActivityIndicatorVisible)
BOOL networkActivityIndicatorVisible;
BC0FDBA5-57EF-4C5D-8D7C-FE3289F31E6E.png
设置状态栏的样式
-(UIStatusBarStyle)preferredStatusBarStyle
{
return UIStatusBarStyleDefault ; // 默认是黑色的
return UIStatusBarStyleLightContent ; // 白色的
}
隐藏状态栏
-(BOOL)prefersStatusBarHidden
{
return NO;
}
还有一种Info.plist 中设置应用程序的状态栏。
1. 在Supported interface orientations 下面。
2.新建一个子目录 View controller-based status bar appearance = NO 全局白色
4. 打开一些内容
OpenURL :
-(BOOL)openURL:(NSURL *)url ;
//打电话
UIApplication *app =[UIApplication shareApplication];
[app openURL: [NSURL URLWithString :@“tel://10086”]];
//发短信
[app openURL: [NSURL URLWithString :@“sms://10086”]];
//发邮件
[app openURL: [NSURL URLWithString :@“mailto://10086”]];
//打开一个网页资源
[app openURL: [NSURL URLWithString :@“http://www.baidu.com”]];
UIApplication 和 Delegate (代理)。
-
所有的移动操作系统多有个致命的缺点:APP很容易受到打扰。
比如一个电话打来,锁屏会导致app 进入后台甚至被终止 -
还有很多其他类似的情况会导致app 受到干扰。
在app 受到干扰时,会产生一些系统事件,这时UIApplication 会通知它的代理对象, 让代理对象来处理代理事件。
// app 接收到内存警告时调用 (清理图片 视频 缓存)
-(void)applicationDidReceiveMemoryWarning:(UIApplication *)application ;
// app 进入后台时调用 (比如按了home 键) (先失去焦点 再进入后台)
-(void)applicationDidEnterBackground:(UIApplication *)application ;
// app 进入前台时调用 :(先进入前台 再获得焦点)
-(void)applicationDidEnterForeground:(UIApplication *)application ;
// app 启动完毕时调用
-(BOOL)application :(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions ;
// 应用程序将要失去焦点时候调用 焦点: 能否与用户进行交互。
-(void)applicatioinWillResignActive:(UIApplication *)application;
// 应用程序获得焦点
-(void)applicatioinDidBecomeActive:(UIApplication *)application;
// 当应用程序退出的时候调用(挂掉的时候。被杀死)
-(void)applicatioinWillTerminate:( UIApplication *)application;
网友评论