1、简单介绍
(1) UIApplication对象是应用程序的象征,UIApplicaiton对象就代表着整
个应用程序,这个对象是单例的。
(2)通过[UIApplication sharedApplication]可以获得当前应用程序
UIApplicaiton对象
(3)程序启动后创建的第一个对象就是UIApplicaiton对象,且只有一个
(4)利用UIApplicaiton对象可以进行一些应用级别的操作
2、UIApplicaiton对象应用级别的操作
1-> 设置应用程序消息数(即应用图标右上角的红色数字图标),获取消息数量
[UIApplication sharedApplication].applicationIconBadgeNumber
2-> 设置联网指示器的可见性(即信号强度右侧菊花控价)
[UIApplication sharedApplication].networkActivityIndicatorVisible
3-> 管理状态栏
从iOS7开始,系统提供了2种管理状态栏的方式
a.通过UIViewController管理(每一个UIViewController都可以拥有
自己不同的状态栏)
在iOS7中,默认情况下,状态栏都是由UIViewController管理,UIViewController实现下列方法就可以轻松管理状态栏的可见性和样式。
状态栏的样式 -(UIStatusBarStyle)preferredStatusBarStyle;
状态栏的可见性 -(BOOL)prefersStatusBarHidden;
b.通过UIApplication管理(一个应用程序的状态栏都由它统一管理)
这种方式需要现在info.plist文件中修改状态栏的设置。
再加入以下代码:
//通过sharedApplication获取该程序的UIApplication对象
UIApplication *app=[UIApplication sharedApplication];
app.applicationIconBadgeNumber=123;
//设置指示器的联网动画
app.networkActivityIndicatorVisible=YES;
//设置状态栏的样式
//app.statusBarStyle=UIStatusBarStyleDefault;//默认(黑色)
//设置为白色+动画效果
[app setStatusBarStyle:UIStatusBarStyleLightContent animated:YES];
//设置状态栏是否隐藏
app.statusBarHidden=YES;
//设置状态栏是否隐藏+动画效果
[app setStatusBarHidden:YES withAnimation:UIStatusBarAnimationFade];
c.补充
通过UIApplication对象设置的状态栏是全局有效的,假如状态栏的样式只设置一次,那么就采用这种方式;如果状态栏样式不一样就采用控制器来管理。
(4) openURL:方法
openURL:方法的部分功能有
打电话 UIApplication *app = [UIApplicationsharedApplication]; [app openURL:[NSURLURLWithString:@"tel://10086"]];
发短信 [app openURL:[NSURLURLWithString:@"sms://10086"]];
发邮件 [app openURL:[NSURLURLWithString:@"mailto://12345@qq.com"]];
打开一个网页资源 [app openURL:[NSURLURLWithString:@"http://ios.itcast.cn"]];
打开其他app程序 openURL方法,可以打开其他APP。
URL补充:
URL:统一资源定位符,用来唯一的表示一个资源。
URL格式:协议头://主机地址/资源路径
网络资源:http/ ftp等 表示百度上一张图片的地址 http://www.baidu.com/images/20140603/abc.png
本地资源:file:///users/apple/desktop/abc.png(主机地址省略)