UIApplication

一、UIApplication
1.簡單介紹
(1)UIApplication對象是應用程序的象征,一個UIApplication對象就代表一個應用程序。
(2)每一個應用都有自己的UIApplication對象,而且是單例的,如果試圖在程序中新建一個UIApplication對象,那么將報錯提示。
(3)通過[UIApplicationsharedApplication]可以獲得這個單例對象
(4) 一個iOS程序啟動后創(chuàng)建的第一個對象就是UIApplication對象,且只有一個(通過代碼獲取兩個UIApplication對象,打印地址可以看出地址是相同的)。
(5)利用UIApplication對象,能進行一些應用級別的操作
2.應用級別的操作示例:
1)設置應用程序圖標右上角的紅色提醒數(shù)字(如QQ消息的時候,圖標上面會顯示1,2,3條新信息等。)
@property(nonatomic) NSInteger applicationIconBadgeNumber;
代碼實現(xiàn)和效果:

- (void)viewDidLoad
{
    [super viewDidLoad];
    //創(chuàng)建并添加一個按鈕
    UIButton *btn=[[UIButton alloc]initWithFrame:CGRectMake(100, 100, 60, 30)];
    [btn setTitle:@"按鈕" forState:UIControlStateNormal];
    [btn setBackgroundColor:[UIColor brownColor]];
    [btn addTarget:self action:@selector(onClick) forControlEvents:UIControlEventTouchUpInside];
    [self.view addSubview:btn];
}
-(void)onClick
{
    NSLog(@"按鈕點擊事件");
    //錯誤,只能有一個唯一的UIApplication對象,不能再進行創(chuàng)建
//    UIApplication *app=[[UIApplication alloc]init];
    
    //通過sharedApplication獲取該程序的UIApplication對象
    UIApplication *app=[UIApplication sharedApplication];
    app.applicationIconBadgeNumber=123;
}

2)設置聯(lián)網(wǎng)指示器的可見性

@property(nonatomic,getter=isNetworkActivityIndicatorVisible) BOOL networkActivityIndicatorVisible;

3)管理狀態(tài)欄
從iOS7開始,系統(tǒng)提供了2種管理狀態(tài)欄的方式
a.通過UIViewController管理(每一個UIViewController都可以擁有自己不同的狀態(tài)欄).
在iOS7中,默認情況下,狀態(tài)欄都是由UIViewController管理的,UIViewController實現(xiàn)下列方法就可以輕松管理狀態(tài)欄的可見性和樣式
狀態(tài)欄的樣式   - (UIStatusBarStyle)preferredStatusBarStyle;
狀態(tài)欄的可見性  -(BOOL)prefersStatusBarHidden;

代碼入下

#pragma mark-設置狀態(tài)欄的樣式
-(UIStatusBarStyle)preferredStatusBarStyle
{
    //設置為白色
    //return UIStatusBarStyleLightContent;
    //默認為黑色
     return UIStatusBarStyleDefault;
}
#pragma mark-設置狀態(tài)欄是否隱藏(否)
-(BOOL)prefersStatusBarHidden
{
    return NO;
}
最后編輯于
?著作權歸作者所有,轉載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務。

相關閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容