每一个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. CICS中设置程序常驻内存

    CICS中设置程序常驻内存 Permanent=no 修改为Permanent=yse --------------------- 对CICS的参数进行调节,RD中

  2. 数据库mysql的基本命令

    问题分析 当数据量很大的时候,所有数据都集中在一个文本文件中的话,读写会很困难,内存消耗大,速度很慢 操作很麻烦,因为读写都要根据指定的格式尽心解析,不通用 每次获取数据都要全部数据重新读写,不能通过 ...

  3. C# 鼠标悬停在datagridview的某单元格,显示悬浮框效果

    今天在做项目时,看到一软件做的悬浮框效果不错,从网上搜罗了一些资料,未见到有十分好的解决办法,只能自已动手,利用datagridview 的ToolTipText 来达到此效果. 以下是我简单实现的代 ...

  4. .NET程序员爱上网站[整理]

    1.博客园(代码改变世界) http://www.cnblogs.com 2.开源中国社区(开源软件发现.使用和交流平台) http://www.oschina.net 3.CSDN(中国最大的IT社 ...

  5. hbase与Hadoop

    Hbase是一种低延迟的在线系统,Hadoop是优化吞吐量的离线系统.这种互补关系造就了一种强大的.灵活的数据平台,可以用来搭建水平扩展的数据应用.

  6. reader,字符流

    1. public class Demo1 { public static void main(String[] args) throws IOException { File file = new ...

  7. cxGrid使用汇总(一)

    1. 去掉cxGrid中台头的Box 解决:在tableview1的ptionsview的groupbybox=false; 2.统计功能 解决:(1) tableview 1. tableview1 ...

  8. 在usercontrol中如何使用验证控件CustomValidator 中的客户端验证

    在用户控件中,为一个文本控件添加CustomValidator验证,然后设置CustomValidator 的ClientValidationFunction 属性为客户端的Validate(sour ...

  9. 正确打印含unicode字符的dict

    python中,dict 对象转换为类似为 \UXXXX 的格式:这种格式英文称为 code point,完全看不懂:当然,也可以通过这个网站来转换 http://rishida.net/tools/ ...

  10. linux 修改系统时间

    首先进入/proc/sys/xen,执行以下命令 [root@test]#cd   /proc/sys/xen[root@test]#echo 1 > independent_wallclock ...