首先说说什么是UIApplication
● UIApplication对象是应用程序的象征
● 每一个应用都有自己的UIApplication对象,而且是单例的
● 通过[UIApplication sharedApplication]可以获得这个单例对象
● 一个iOS程序启动后创建的第一个对象就是UIApplication对象
● 利⽤用UIApplication对象,能进⾏行⼀一些应⽤用级别的操作
UIApplication的常用属性
设置应用程序图标右上角的红色提醒数字
这里iOS设置一行代码就可以搞定了
<code class=" hljs objectivec" style="display: block; padding: 0.5em; background-color: rgb(255, 255, 255);"><span class="hljs-keyword" style="color: rgb(0, 0, 136); padding: 0px; margin: 0px;">@property</span>(<span class="hljs-keyword" style="color: rgb(0, 0, 136); padding: 0px; margin: 0px;">nonatomic</span>) <span class="hljs-built_in" style="color: rgb(102, 0, 102); padding: 0px; margin: 0px;">NSInteger</span> applicationIconBadgeNumber;</code>
设置联网指示器的可见性
<code class=" hljs objectivec" style="display: block; padding: 0.5em; background-color: rgb(255, 255, 255);"><span class="hljs-keyword" style="color: rgb(0, 0, 136); padding: 0px; margin: 0px;">@property</span>(<span class="hljs-keyword" style="color: rgb(0, 0, 136); padding: 0px; margin: 0px;">nonatomic</span>,getter=isNetworkActivityIndicatorVisible) <span class="hljs-built_in" style="color: rgb(102, 0, 102); padding: 0px; margin: 0px;">BOOL</span> networkActivityIndicatorVisible;</code>
<code class=" hljs objectivec" style="display: block; padding: 0.5em; background-color: rgb(255, 255, 255);"> </code>
iOS7中的状态栏
从iOS7开始,系统提供了2种管理状态栏的⽅方式
通过UIViewController管理
每一个UIViewController都可以拥有自己不同的状态栏
通过UIApplication管理
每一个应用程序的状态栏都由它统一管理
在iOS7中,默认情况下,状态栏都是由UIViewController管理 的,UIViewController实现下列方法就可以轻松管理状态栏的可见性和样式
状态栏的样式
<code class=" hljs " style="display: block; padding: 0.5em; background-color: rgb(255, 255, 255);">(UIStatusBarStyle)preferredStatusBarStyle;</code>
状态栏的可⻅见性
<code class=" hljs erlang" style="display: block; padding: 0.5em; background-color: rgb(255, 255, 255);">- <span class="hljs-params" style="color: rgb(102, 0, 102); padding: 0px; margin: 0px;">(<span class="hljs-variable" style="padding: 0px; margin: 0px;">BOOL</span>)</span>prefersStatusBarHidden;</code>
由于iOS7 默认是用 UIviewController 管理状态栏的如果想利用UIApplication来管理状态栏,首先得修改Info.plist的设置
openURL:
UIApplication有个功能⼗十分强⼤大的openURL:⽅方法 - (BOOL)openURL:(NSURL*)url;
openURL:⽅方法的部分功能有
➢ 打电话
UIApplication *app = [UIApplication sharedApplication]; [app openURL:[NSURL URLWithString:@"tel://10086"]];
➢ 发短信
[app openURL:[NSURL URLWithString:@"sms://10086"]];
➢ 发邮件
[app openURL:[NSURL URLWithString:@"mailto://12345@qq.com"]];
➢ 打开⼀一个网页资源
[app openURL:[NSURL URLWithString:@"http://blog.csdn.net/u013357243?viewmode=contents"]];