UIApplication是一個(gè)單例對(duì)象,一個(gè)系統(tǒng)中只有一個(gè)UIApplication對(duì)象.它可以用來管理應(yīng)用級(jí)的消息通知/打開網(wǎng)頁(yè)/狀態(tài)欄的顯示與隱藏/是否在聯(lián)網(wǎng)狀態(tài)等內(nèi)容.
獲取UIApplication對(duì)象
UIApplication *app = [UIApplication sharedApplication];
1.設(shè)置系統(tǒng)消息,只需設(shè)置UIApplication的applicationIconBadgeNumber屬性
//創(chuàng)建UIUserNotificationSettings對(duì)象
UIUserNotificationSettings *set = [UIUserNotificationSettings settingsForTypes:UIUserNotificationTypeBadge categories:nil];
//In iOS 8.0 and later, your application must register for user notifications using -[UIApplication registerUserNotificationSettings:] before being able to set the icon badge.
//在iOS8及以后,你的應(yīng)用必須通過[UIApplication registerUserNotificationSettings:]方法來注冊(cè)用戶通知之后,才能設(shè)置applicationIconBadge屬性
[app registerUserNotificationSettings:set];
//設(shè)置消息數(shù)量
app.applicationIconBadgeNumber = 10;
效果圖:

提醒用戶是否允許發(fā)送通知

顯示消息數(shù)量
2.設(shè)置聯(lián)網(wǎng)狀態(tài)
//設(shè)置聯(lián)網(wǎng)狀態(tài)
app.networkActivityIndicatorVisible = YES;
效果圖

聯(lián)網(wǎng)時(shí)出現(xiàn)旋轉(zhuǎn)的小菊花
3.打開網(wǎng)頁(yè)
//點(diǎn)擊按鈕打開網(wǎng)址
- (IBAction)openUrl:(id)sender {
//獲取UIApplication對(duì)象
UIApplication *app = [UIApplication sharedApplication];
//創(chuàng)建網(wǎng)址
NSURL *url = [NSURL URLWithString:@"http://www.baidu.com"];
//打開網(wǎng)址
[app openURL:url];
}
效果圖

點(diǎn)擊打開網(wǎng)頁(yè)
4.設(shè)置狀態(tài)欄,以下方法均可
//設(shè)置狀態(tài)欄隱藏
[app setStatusBarHidden:YES withAnimation:YES];
//設(shè)置狀態(tài)欄隱藏
[app setStatusBarHidden:YES withAnimation:UIStatusBarAnimationFade];
注意:在ios7以后,狀態(tài)欄默認(rèn)由控制器管理,所以,在iOS7以后需要設(shè)置以下方法才能隱藏狀態(tài)欄
- (BOOL)prefersStatusBarHidden{
return YES;
}
//設(shè)置狀態(tài)欄樣式
- (UIStatusBarStyle)preferredStatusBarStyle{
return UIStatusBarStyleLightContent;//白色
return UIStatusBarStyleDefault;//默認(rèn)
}
效果圖:

設(shè)置狀態(tài)欄為UIStatusBarStyleLightContent

設(shè)置狀態(tài)欄為UIStatusBarStyleDefault