1、概述
uiapplication對象是應用程式的象征。每一個應用都有自己的uiapplication對象,而且是單例(隻能有一個對象,我們不能去建立新對象,隻能擷取這個對象)的。通過[uiapplication sharedapplication]可以獲得這個單例對象。一個ios程式啟動後建立的第一個對象就是uiapplication對象。利用uiapplication對象,能進行一些應用級别的操作。
2、uiapplication的常用屬性
1、設定應用程式圖示右上角的紅色提醒數字
@property(nonatomic) nsinteger applicationiconbadgenumber;
2、設定聯網訓示器的可見性
@property(nonatomic,getter=isnetworkactivityindicatorvisible) bool networkactivityindicatorvisible;
3、ios7中的狀态欄
1、狀态欄的管理
從ios7開始,系統提供了2種管理狀态欄的方式:
第一種:
通過uiviewcontroller管理(每一個uiviewcontroller都可以擁有自己不同的狀态欄)。
第二種:
通過uiapplication管理(一個應用程式的狀态欄都由它統一管理)。
利用uiviewcontroller來管理狀态欄:
在ios7中,預設情況下,狀态欄都是由uiviewcontroller管理的,uiviewcontroller實作下列方法就可以輕松管理狀态欄的可見性和樣式:
(1)狀态欄的樣式
- (uistatusbarstyle)preferredstatusbarstyle;
(2)狀态欄的可見性
- (bool)prefersstatusbarhidden;
利用uiapplication來管理狀态欄
利用uiapplication來管理狀态欄:
如果想利用uiapplication來管理狀态欄,首先得修改info.plist的設定。
之後就可以用uiapplication來管理狀态欄了:
比如:使用一個淡出動畫效果隐藏狀态欄:
[app setstatusbarhidden:yes withanimation:uista tusbaranimationfade];
設定狀态欄的風格為白色:
app.statusbarstyle = uistatusbarstylelightcontent;
隐藏狀态欄:
app.statusbarhidden = yes;
2、openurl
uiapplication有個功能十分強大的openurl:方法
- (bool)openurl:(nsurl*)url;
openurl:方法的部分功能:
(1)打電話
uiapplication *app = [uiapplication sharedapplication];
[app openurl:[nsurl urlwithstring:@"tel://10086"]];
(2)發短信
[app openurl:[nsurl urlwithstring:@"sms://10086"]];
(3)發郵件
[app openurl:[nsurl urlwithstring:@"mailto://[email protected]"]];
(4)打開一個網頁資源(自動跳轉到浏覽器打開)
[app openurl:[nsurl urlwithstring:@"http://ios.itcast.cn"]];
(5)打開其他app程式
. . . . . . .