每一个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. Python之路【第六篇】:socket

    Python之路[第六篇]:socket   Socket socket通常也称作"套接字",用于描述IP地址和端口,是一个通信链的句柄,应用程序通常通过"套接字&quo ...

  2. 卡通风格的连连看ios游戏源码

    卡通风格的连连看游戏源码,该游戏是一款韩国人做的卡通风格的ios连连看游戏源码,源码设计的效果非常漂亮的,而且运行起来感觉也很好.1.游戏采用倒计时模式2.该游戏是一款社交游戏,需要通过faceboo ...

  3. leetcode3:不重复的最长子串长度

    package hashmap; import java.util.HashMap; import java.util.Map; public class hashmap { public stati ...

  4. libharu 源码编译 VS2010

    最近项目中接过了一个libharu PDF 开源库的锅,哈哈.于是就自己编译了一套libharu 的MFC下的静态库和动态库. 编译libharu需要用到zlib库和libpng库,libpng库又依 ...

  5. Win 2003下IIS6+Mysql+php5.2  isapi搭建 升级php5.2到5.3测试 借助fastcgi实现

    Win 2003下IIS6+Mysql+php5.2  原环境isapi搭建 升级php5.2到5.3测试 借助fastcgi实现 操作如下 实验前准备:php-5.3.5-Win32-VC6-x86 ...

  6. ADO.NET中ExcuteReader读取存储过程获取的多行数据

    DLL层调用: List<BookInfo> tupleList = new List<BookInfo>(); using (IDataReader reader = thi ...

  7. [leetcode]_K Sum 问题

    问题:K Sum问题是一个问题系列,在一个数组中找K个数的和能够满足题目中要求.从2 Sum 到 3 Sum , 3 Sum Clozet , 4 Sum..解法虽一开始不容易想到,但get到解题技能 ...

  8. svn的使用!!!

    1.SVN:subversion(子级源代码版本控制管理软件) 2.SVN的作用 (1)避免开发同一项目不会出现代码覆盖. (2)同一文件可以创建许多不同的版本,并可以随时查看不同版本的内容. (3) ...

  9. Pycharm 使用 (一)

    学习[Python基础教程]到后面的练习阶段就觉得python自带的IDLE有点out的感觉,于是就在网上搜索好用的IDE, 挺多人推荐Pycharm的 不仅跨平台而且还支持django等框架; 初次 ...

  10. VM虚拟机无法拖拽、粘贴、复制

    VM无法从客户机拖放/复制文件到虚拟机的解决办法: 将这两项取消勾选,点击[确定].再次打开,勾选,点击[确定] 原因分析:可能是VM中默认是不支持该功能的,但是在配置窗体上确实默认打钩打上的. 依据 ...