UIApplication类及其委托方法

转载 2015年07月07日 20:36:46
UIApplication类及其委托方法

application:didFinishLaunchingWithOptions:  


  UIApplication继承自UIResponder,的主要作用是提供了iOS程序运行期间的控制和协作工作,每个iOS程序运行期间都会有一个UIApplication实例,一般由main函数的UIApplicationMain函数完成,而在代码中可以调用[UIApplication sharedApplication]方法来得到这个实例(有且仅有一个),比如可以利用它判断程序状态:

    if([UIApplication sharedApplication].applicationState ==UIApplicationStateInactive){

            NSLog(@"程序在运行状态");

       }

新建一个任意类型的iOS应用工程,在AppDelegate.h中会看到

    AppDelegate :UIResponder <UIApplicationDelegate>

即本类实现(采纳)了一个名叫UIApplicationDelegate的接口,且表明AppDelegate这个类就是这个工程中UIApplication实例的代理类。

 看看main函数:

int main(int argc, char *argv[])

{

    @autoreleasepool {

        return UIApplicationMain(argc, argv, nil, NSStringFromClass([AppDelegate class]));

    }

}

  这里传入了代理类到UIApplicationMain函数中,UIApplicationMain函数在生成唯一一个UIApplication的时候就可以把代理类的实例指针告诉这个单例对象了。

  在UIApplicationDelegate中有很多方法,最重要无非就是

- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions。

iOS程序启动时总会调用此方法,其中第二个参数launchOptions为NSDictionary类型的对象,里面存储有此程序启动的原因。例如:若 用户直接启动,lauchOptions内无数据; 若由其他应用程序通过openURL:启动,则lauchOptions==UIApplicationLaunchOptionsURLKey对应的对 象为启动 URL(NSURL),lauchOptions==UIApplicationLaunchOptionsSourceApplicationKey对 应启动的源应用程序的bundle ID (NSString)。

相关文章推荐

浅析 UIApplication 生命周期的一些 delegate 方法

浅析 UIApplication 生命周期的一些 delegate 方法

204,UIApplication与代理方法

在app受到干扰时,比如一个来电或者锁屏会导致app进入后台甚至被终止会产生一些系统事件,这时UIApplication会通知它的delegate对象,让delegate代理来处理这些系统事件dele...

UIApplication常用的代理方法和属性

很多时候,我们不需要关心这个类,我们很少继承这个类,偶尔会调用这个类的api来实现一些功能,但是不可否认,这个类是iOS编程中很重要的一个概念,所以我这里写这个文章来总结以下这个类的信息,如果写的不对...

在UIAlterView的代理方法中 点击确定时 添加一个UIView到[[UIApplication sharedApplication].keyWindow上只出现了0.5秒左右就消失的问题

昨天,遇到一个很奇葩的问题,看下面代码: [objc] view plain copy   -(void) alertView:(UIAlertView ...

Info.plist和pch文件的作用,UIApplication,iOS程序的启动过程,AppDelegate 方法解释,UIWindow,生命周期方法

Info.plist常见的设置 建立一个工程后,会在Supporting files文件夹下看到一个“工程名-Info.plist”的文件,该文件对工程做一些运行期的配置,非常重要,不能删除 注:在...
  • Leo_DLi
  • Leo_DLi
  • 2016年03月26日 13:31
  • 726

UIApplication、AppDelegate、委托

什么是委托?为什么要有委托?委托在Iphone中的实现机制是怎样的?  一般来说,我们创建了一个Iphone项目,默认会有这个main.m类,我们都晓得,一个main()方法代表着一个应用程序的...

UIApplication、AppDelegate、委托

UIApplication、AppDelegate、委托等的关系?   什么是委托?为什么要有委托?委托在Iphone中的实现机制是怎样的?   一般来说,我们创建了一个Iphone项目,默认...

UIApplication委托信息(多任务)

一般的应用在进入后台的时候可以获取一定时间来运行相关任务,也就是说可以在后台运行一小段时间。 还有三种类型的可以运行在后台, 1.音乐 2.location 3.voip 大多数应用程序进入后台...

iOS7应用开发13:应用类UIApplication、网络活动指示器、地图

1、应用类UIApplication: UIApplication为应用提供了一个共享的实例,可以提供一些全局信息。调用方法如下: UIApplicaiton *myApplication = [UI...

UIApplication扩展

  • 2013年06月26日 18:04
  • 58KB
  • 下载
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:UIApplication类及其委托方法
举报原因:
原因补充:

(最多只允许输入30个字)