IT技术iOS学习iOS开发技术分享

收集iOS--UIApplication的常用属性

2016-12-26  本文已影响115人  TenMios

UIApplication 对象是 应用程序的象征

  1. 每一个应用都有自己的UIApplication 对象,而且是单例的。
  2. 通过【UIApplication shareApplication】可以获得这个单例对象
  3. 一个iOS程序启动后创建的第一个对象就是 UIApplication 对象
  4. 利用UIApplication 对象, 能进行一些应用级别的操作。

UIApplication 的常用属性

1. 设置应用程序 图标右上角的红色提醒数字。
    @property (nonatomic) NSInteger applicationIconBadgeNumber ;
8323ED4A-36A2-464C-9458-24475F147791.png

2. 设置联网指示器的可见性

    @property (nonatomic,getter = isNetworkActivityIndicatorVisible)
    BOOL networkActivityIndicatorVisible;
BC0FDBA5-57EF-4C5D-8D7C-FE3289F31E6E.png

设置状态栏的样式

    -(UIStatusBarStyle)preferredStatusBarStyle
        {
        return UIStatusBarStyleDefault ; // 默认是黑色的
        return UIStatusBarStyleLightContent ; // 白色的
        }

隐藏状态栏

    -(BOOL)prefersStatusBarHidden
        {
            return  NO; 
        }

还有一种Info.plist 中设置应用程序的状态栏。

    1. 在Supported interface orientations 下面。
    2.新建一个子目录 View controller-based status bar appearance = NO 全局白色

    4.  打开一些内容  
        OpenURL :
        -(BOOL)openURL:(NSURL *)url ;
        
        //打电话
        UIApplication *app =[UIApplication shareApplication];
        [app openURL: [NSURL URLWithString :@“tel://10086”]];


        //发短信
        [app openURL: [NSURL URLWithString :@“sms://10086”]];

        //发邮件
        [app openURL: [NSURL URLWithString :@“mailto://10086”]];

        //打开一个网页资源
        [app openURL: [NSURL URLWithString :@“http://www.baidu.com”]];

UIApplication 和 Delegate (代理)。

  1. 所有的移动操作系统多有个致命的缺点:APP很容易受到打扰。
    比如一个电话打来,锁屏会导致app 进入后台甚至被终止

  2. 还有很多其他类似的情况会导致app 受到干扰。
    在app 受到干扰时,会产生一些系统事件,这时UIApplication 会通知它的代理对象, 让代理对象来处理代理事件。

     // app 接收到内存警告时调用 (清理图片 视频 缓存)
    -(void)applicationDidReceiveMemoryWarning:(UIApplication *)application ;

    // app 进入后台时调用 (比如按了home 键) (先失去焦点 再进入后台)
    -(void)applicationDidEnterBackground:(UIApplication *)application ;

    // app 进入前台时调用    :(先进入前台 再获得焦点)
    -(void)applicationDidEnterForeground:(UIApplication *)application ;

    // app 启动完毕时调用
    -(BOOL)application  :(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions ;

    //  应用程序将要失去焦点时候调用     焦点: 能否与用户进行交互。
    -(void)applicatioinWillResignActive:(UIApplication *)application;

    //  应用程序获得焦点
    -(void)applicatioinDidBecomeActive:(UIApplication *)application;

    //  当应用程序退出的时候调用(挂掉的时候。被杀死)
    -(void)applicatioinWillTerminate:( UIApplication *)application;

上一篇下一篇

猜你喜欢

热点阅读