每一个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. Shiro使用总结

    Shiro已经添加到项目中,现阶段管理两个功能: 1.身份验证:(已经能够满足现阶段需求) 2.权限管理: 权限管理,需要在界面中加一些标签,后台角色.资源的管理也需要整理好,然后在前端添加管理. 1 ...

  2. SqlServer 事务和异常处理示例

    BEGIN TRANSACTION--开始事务 DECLARE @errorSun INT --定义错误计数器SET @errorSun=0 --没错为0 UPDATE dbo.Test SET te ...

  3. Stop PeopleCode Processing with Error

    A blunt, but useful method for debugging PeopleCode is to use the inbuilt "Error" function ...

  4. 泛型集合转换为DataTable

    在做项目中,遇到了将集合转换为DataTable的使用,在网上看了资料,在这里记录下来,分享. using System; using System.Collections.Generic; usin ...

  5. 兼容ie7的导航下拉菜单

    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/ ...

  6. AsyncTask的简单使用

    package com.zzw.life; import android.app.Activity; import android.os.AsyncTask; import android.os.Bu ...

  7. 【easuyi】---easyui中的验证validatebox自定义

    这里比较简单的使用就不再多说,主要说一下自定义的validatebox. 1.验证密码是否相等,这个直接参考给定的列子就行,这里主要学习这种灵活使用的方式和方法. <input id=" ...

  8. mssql 下删除 default 值的Sql写法

    FROM Sys.default_constraints a JOIN sys.columns b ON a.parent_object_id = b.object_id AND a.parent_c ...

  9. Mongodb 3.0 创建用户

    MongoDB 3.0 安全权限访问控制,在添加用户上面3.0版本和之前的版本有很大的区别,这里就说明下3.0的添加用户的方法. 创建第一个用户(该用户需要有grant权限,即:账号管理的授权权限) ...

  10. SRF之日志和异常

    日志: 日志功能采用log4net实现 log4配置文件在站点目录下的log4net.config. 调用log4写日志的代码如下: log4net.ILog logger = log4net.Log ...