每一个UIApplication代表一个应运程序,而且UIApplication是个单例类;

ios程序一旦启动,创建的第一个对象就是UIApplication对象;
 
 // 拿到UIApplication对象 *******************
    UIApplication *appliction = [UIApplication sharedApplication];
    // 1:设置应用程序图标右上角的红色提醒数字**********************
    appliction.applicationIconBadgeNumber = 998;
    
    // 2:设置联网指示器的可见性 *********************************
    appliction.networkActivityIndicatorVisible = YES;
    
    /** 3:状态栏样式 状态栏的隐藏、显示 *****************************
        3.1:控制器管理:
            样式:- (UIStatusBarStyle)preferredStatusBarStyle;
            可见性:- (BOOL)prefersStatusBarHidden;
        3.2:由application统一管理 一次设置 整个程序都一样的状态栏
            好处:一次性管理 可添加动画效果
            *:如果想利用UIApplication来管理状态栏,首先得修改Info.plist的设置
     */
    // 样式
    appliction.statusBarStyle = UIStatusBarStyleLightContent;
    // 可见性 带动画
    [appliction setStatusBarHidden:YES withAnimation:UIStatusBarAnimationFade];
    
    /* 4:设置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://ios.itcast.cn"]];
     
     打开其他app程序 ....
     */
 =================================UIApplication的delegate===============
UIApplication的delegate 
在app受到干扰时,会产生一些系统事件,这时UIApplication会通知它的delegate对象,让delegate代理来处理这些系统事件
每次新建一个ios程序时,xcode会自动生成一个delegate类作为UIApplication的delegate
里边的主要方法来处理一下事件
 /*
*程序启动完毕时调用的方法 系统自动调用
*/
- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions
{
// Override point for customization after application launch.
return YES;
} /*
* 即将失去焦点,不可交互的时候 调用这个方法
*/ - (void)applicationWillResignActive:(UIApplication *)application
{ } /*
* 应运程序进入后台的时候调用 一般在该方法中保存当前的程序的状态
*/
- (void)applicationDidEnterBackground:(UIApplication *)application
{ } /*
* 应运程序进入前台的时候调用 对保存的数据重新加载
*/
- (void)applicationWillEnterForeground:(UIApplication *)application
{ } /*
* 重新获取焦点 能够和用户交互
*/
- (void)applicationDidBecomeActive:(UIApplication *)application
{ } /*
* 应运程序即将被销毁的时候 会调用该方法 如果应运程序处于挂起状态的时候 无法调用该方法
*/
- (void)applicationWillTerminate:(UIApplication *)application
{ } /*
* 应运程序内存警告方法
* 一般在该方法中释放不需要的内存
*/
- (void)applicationDidReceiveMemoryWarning:(UIApplication *)application
{ }


 

iOS UIApplicatin和它的delegate的更多相关文章

  1. iOS中 Proxy和的delegate区别

    在ios中使用proxy代理模式,经常容易和delegate委托模式混淆. 委托模式(delegate),是简单的强大的模式,可让一个对象扮演另外对象的行为.委托对象保持到另外对象的引用,并在适当的时 ...

  2. iOS开发之protocol和delegate

     protocol--协议 协议是用来定义对象的属性,行为和用于回调的.     协议中有两个keyword@private和@optional,@private表示使用这个协议必需要写的方法,@op ...

  3. iOS开发之UIApplication和delegate

    1.概述 所有的移动操作系统都有个致命的缺点:app很容易受到打扰.比如一个来电或者锁屏会导致app进入后台甚至被终止. 还有很多其它类似的情况会导致app受到干扰,在app受到干扰时,会产生一些系统 ...

  4. IOS ScrollView的使用 and delegate

    ScrollView常用的属性设置 //设置内容尺寸 // CGFloat contentH=self.lastBtn.frame // .origin.y+self.lastBtn.frame.si ...

  5. IOS 如何选择delegate、notification、KVO?

    IOS 如何选择delegate.notification.KVO? 博客分类: IOS   前面分别讲了delegate.notification和KVO的实现原理,以及实际使用步骤,我们心中不禁有 ...

  6. IOS开发基础知识碎片-导航

    1:IOS开发基础知识--碎片1 a:NSString与NSInteger的互换 b:Objective-c中集合里面不能存放基础类型,比如int string float等,只能把它们转化成对象才可 ...

  7. IOS开发基础知识--碎片42

    1:报thread 1:exc_bad_access(code=1,address=0x70********) 闪退 这种错误通常是内存管理的问题,一般是访问了已经释放的对象导致的,可以开启僵尸对象( ...

  8. Objective-c 代理模式(delegate)

    Objective-c 代理模式(delegate) (2012-07-31 22:04:39) 转载▼ 标签: 杂谈 分类: iOS Objective-c 代理模式(delegate)     一 ...

  9. iOS UIKit:App

    1.App生命周期 IOS架构是由许多设计模式实现,如model-view-controller 和 delegation模式. 1.1 main函数 与其它框架类似,IOS框架的入口也是从main函 ...

随机推荐

  1. 用绝对路径引用JS、CSS

    项目中,最好使用绝对路径引用JS和CSS文件,详情如下: 1.vm文件中: <link rel="stylesheet" href="$!{request.cont ...

  2. 【一步一图】:详解IIS日志配置

    打开网站配置:右键点击属性 弹出设置界面     如上图,日志可选4种格式: [Microsoft IIS 日志文件格式]   存放地址如上图 以in开头 年份后两位+月份+日 命名: 示例: //, ...

  3. 开源自己的一个小android项目(美女撕衣服游戏)

    这是自己的一个开源自己的一个小android项目(美女撕衣服游戏),也是前6个月开发的,有部分的资源来自网络上的,现在开源出来给大家吧,由于源码比较大,不上传了,我已经上传到源码天堂那个网站那里了,大 ...

  4. 面向对象的 JavaScript

    面向对象的javascript 一.创建对象 创建对象的几种方式: var obj = {}; var obj = new Object(); var obj = Object.create(fath ...

  5. HTML5 对于手机页面长按会粘贴复制的禁用 (解决方案)

    解决方案: 直接在CSS 文件中添加下面的代码,就可以实现了在手机端禁止粘贴复制的功能: *{    -webkit-touch-callout:none;  /*系统默认菜单被禁用*/    -we ...

  6. C# Async与Await用法

    using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.T ...

  7. mysql列属性auto(mysql笔记四)

    常见的的是一个字段不为null存在默认值 没值得时候才去找默认值,可以插入一个null到 可以为null的行里 主键:可以唯一标识某条记录的字段或者字段的集合 主键设置 主键不可为null,声明时自动 ...

  8. 在Nginx 下运行 Laravel5.1 的配置

    一.nginx 的 vhost.conf 配置: server { listen ; server_name sub.domain.com; set $root_path '/srv/www/defa ...

  9. 将Tab栏居中的方法

    原始tab: 居中后的tab(边缘效果是截图的问题): 改变方法如下: 找到Android SlidingTabLayout源代码,在Android SlidingTabLayout源代码中有一个方法 ...

  10. 3.css中的颜色

    css中颜色的设置形式主要有三种方式:颜色名称.十六进制代码和十进制代码. 在古老的 HTML4 时,颜色名称只有 16 种. 颜色名称 十六进制代码 十进制代码 含义  black  #000000 ...