返回

上海达内教育

ios—iPhone开发之生命周期

java学习网更新时间:2021-07-15 浏览:167

在首次触碰iPhone开发设计的情况下,真是便是一头雾水,这是哪里跟哪里啊?原是做Android开发设计的我,次创建iPhone开发设计而获得原始编码,内心那担心比我首次触碰Android的状况还需要槽糕!不用说那么多空话了,通 过编文章内容*来了解一下iPhone程序流程的生命期吧,这对全部开发进度也是十分有效的!

iPhone app 与 Android app在生命期在大致是同样,可是不一样的时Android的程序流程生命期都反映在每一个网页页面Activity上,换句话说,在开发设计Android app的情况下,大家只*须管理方法好每一个网页页面Activity的生命期,app的生命期就不用大家太操劳了!而iPhone app是严苛依照MVC实体模型开发设计出去的程序流程,“授权委托”这一定义是十分关键的,理所应当,iPhone app的生命期也是在“授权委托”上完成的,我们在创建iPhone app的最初的状态就可以见到2个文档:AppDelegate.h和AppDelegate.m!这两个文档是我刚常说的“授权委托”的库函数和完成文档!AppDelegate.m上就可以见到app的生命期所开启所有方式 !iPhone的生命期分成二种,一是程序流程的生命期,二是主视图(也就是等同于Android的Activity)的生命期!

*,详细介绍程序流程的生命期:(描述工作能力有待提高,上编码*具体)

[plain]

//初次载入,开启的方式 ,逐渐载入程序流程

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

{

NSLog(@"app didFinishLaunchingWithOptions");

self.window = [[[UIWindow alloc] initWithFrame:[[UIScreen mainScreen] bounds]] autorelease];

// Override point for customization after application launch.

self.viewController = [[[ViewController alloc] initWithNibName:@"ViewController" bundle:nil] autorelease];

self.window.rootViewController = self.viewController;

[self.window makeKeyAndVisible];

return YES;

}

//当客户点击菜单健,程序流程舍弃激活状态

- (void)applicationWillResignActive:(UIApplication *)application

{

NSLog(@"applicationWillResignActive");

}

//进到后台管理,进程被挂起来

- (void)applicationDidEnterBackground:(UIApplication *)application

{

NSLog(@"applicationDidEnterBackground");

}

//程序流程未完毕,点一下程序流程回到前台接待,再度获得激活状态,开启applicationDidBecomeActive方式 !

- (void)applicationWillEnterForeground:(UIApplication *)application

{

NSLog(@"applicationWillEnterForeground");

}

//进行激话,能够与客户互动

- (void)applicationDidBecomeActive:(UIApplication *)application

{

NSLog(@"applicationDidBecomeActive");

}

//程序流程完毕时开启

- (void)applicationWillTerminate:(UIApplication *)application

{

NSLog(@"applicationWillTerminate");

}

下边使我们看一下主视图的生命期:

[plain]

- (void)viewDidLoad

{

[super viewDidLoad];

NSLog(@"viewDidLoad");

}

- (void)viewDidUnload

{

[super viewDidUnload];

secondViewController = nil;

NSLog(@"viewDidUnload");

}

-(void)viewWillAppear:(BOOL)animated

{

[super viewWillAppear:YES];

NSLog(@"viewWillAppear");

}

-(void)viewDidAppear:(BOOL)animated

{

[super viewDidAppear:YES];

NSLog(@"viewDidAppear");

}

-(void)viewDidDisappear:(BOOL)animated

{

[super viewDidDisappear:YES];

NSLog(@"viewDidDisappear");

}

-(void)viewWillDisappear:(BOOL)animated

{

[super viewWillDisappear:YES];

NSLog(@"viewWillDisappear");

}

从方式名,大家都能够看得出来,主视图生命期里边大约开启的方式 。

如今大家运作一下程序流程,随后从一个主视图转换到第二个主视图,再返回一个主视图。使我们看一下,从程序流程、主视图的发生,衰落所开启的全部方式 :

[plain]

2012-05-10 11:29:13.426 iPhoneLifeCycle[877:f803] app didFinishLaunchingWithOptions

2012-05-10 11:29:13.459 iPhoneLifeCycle[877:f803] viewDidLoad

2012-05-10 11:29:13.462 iPhoneLifeCycle[877:f803] viewWillAppear

2012-05-10 11:29:13.465 iPhoneLifeCycle[877:f803] applicationDidBecomeActive

2012-05-10 11:29:13.472 iPhoneLifeCycle[877:f803] viewDidAppear

2012-05-10 11:29:15.054 iPhoneLifeCycle[877:f803] viewWillDisappear

2012-05-10 11:29:15.061 iPhoneLifeCycle[877:f803] viewDidDisappear

2012-05-10 11:29:16.476 iPhoneLifeCycle[877:f803] viewDidLoad

2012-05-10 11:29:16.478 iPhoneLifeCycle[877:f803] viewWillAppear

2012-05-10 11:29:16.483 iPhoneLifeCycle[877:f803] viewDidAppear

2012-05-10 11:29:21.790 iPhoneLifeCycle[877:f803] applicationWillResignActive

2012-05-10 11:29:21.796 iPhoneLifeCycle[877:f803] applicationDidEnterBackground

相关资讯

c++ vector 使用效率问题
2021-07-15 368
1. vector中的erase方式 高效率是很低。由于为了更好地维持vector中原素在存储空间中的持续性,在删掉某一原素以后,*将之后...
云计算技术与应用学什么东西
2021-07-16 312
云计算技术与应用是学什么的?众所周知,云计算技术是当前的热门技术, 云计算专*技*人才是香饽饽,计划学习云计算技术与应用...
初学者适合学习哪些编程语言
2021-07-15 309
许多同学想改行程序编写,可是那么多的计算机语言究竟该怎么选呢?头痛~如果你是一名具备创新性的开发人员或是想变成一名具备展望工作能力的开发人员得话,那麼,你应该最少在**是的计算机语言中挑选一个,相近 Python, JavaScript, C#, C++, PHP, Java, 或是 go...
java技术有哪些优点优势
2021-07-15 300
Java技术性有以下优势:简易、面向对象编程、分布式系统、表述实行、鲁棒性、安全性、系统架构保持中立、生命期、性能卓越、线程同步及其动态...
Java未来发展的趋势
2021-06-15 295
没有Java,甚至不会有大数据的大发展,Hadoop本身就是用Java编写的。当你需要在运行MapReduce的服务器集群上发布新功能时,你需...
学什么技术有前途 Java怎么样
2021-07-19 259
如今正是互联网信息时代,随着时代的变迁肯定会发展的越来越好,而Java编程语言是最于我们生活息息相关的,用处范围广泛,比如:...
北京达内教学怎么样 北京达内教育学习环境好吗
2021-07-15 250
日给大伙儿分享一些有关达内教育学习中心的相片,了解一下达内教育学习中心自然环境怎样。下边就跟随我一起来吧...
学Java可以做哪些职位
2021-06-11 245
Java是时下非常流行的语言,这意味着有很多很多不同的工作可供选择。Java软件工程师入行1-3年,*已达到10-15万,而且在IT行业...

相关课程

栏目导航