UINavigationController管理view的方法

1,在storyboard上删除预先建好的控制器,拖出NavigationController,使其rootView连接一个新建的ViewController(FKOneViewController),在FKOneViewController上放上一个button,点击button跳转到另一个新建的ViewController(FKSecondViewController)。

2,在FKOneViewController和FKSecondViewController写入代码:

 1 #import "FKOneViewController.h"
 2
 3 @implementation FKOneViewController
 4 - (void)loadView
 5 {
 6     [super loadView];
 7     NSLog(@"FKOneViewController---loadView");
 8 }
 9
10 - (void)viewDidLoad
11 {
12     [super viewDidLoad];
13     NSLog(@"FKOneViewController---viewDidLoad");
14 }
15
16 - (void)viewWillAppear:(BOOL)animated
17 {
18     [super viewWillAppear:animated];
19     NSLog(@"FKOneViewController---viewWillAppear");
20 }
21
22 - (void)viewDidAppear:(BOOL)animated
23 {
24     [super viewDidAppear:animated];
25     NSLog(@"FKOneViewController---viewDidAppear");
26 }
27
28 - (void)viewWillDisappear:(BOOL)animated
29 {
30     [super viewWillDisappear:animated];
31     NSLog(@"FKOneViewController---viewWillDisappear");
32 }
33
34 - (void)viewDidDisappear:(BOOL)animated
35 {
36     [super viewDidDisappear:animated];
37     NSLog(@"FKOneViewController---viewDidDisappear");
38 }
39
40 - (void)dealloc
41 {
42     NSLog(@"FKOneViewController---dealloc");
43 }
44 @end
 1 #import "FKSecondViewController.h"
 2
 3 @implementation FKSecondViewController
 4 - (void)loadView
 5 {
 6     [super loadView];
 7
 8     NSLog(@"FKSecondViewController---loadView");
 9 }
10
11 - (void)viewDidLoad
12 {
13     [super viewDidLoad];
14     NSLog(@"FKSecondViewController---viewDidLoad");
15 }
16
17 - (void)viewWillAppear:(BOOL)animated
18 {
19     [super viewWillAppear:animated];
20     NSLog(@"FKSecondViewController---viewWillAppear");
21 }
22
23 - (void)viewDidAppear:(BOOL)animated
24 {
25     [super viewDidAppear:animated];
26     NSLog(@"FKSecondViewController---viewDidAppear");
27 }
28
29 - (void)viewWillDisappear:(BOOL)animated
30 {
31     [super viewWillDisappear:animated];
32     NSLog(@"FKSecondViewController---viewWillDisappear");
33 }
34
35 - (void)viewDidDisappear:(BOOL)animated
36 {
37     [super viewDidDisappear:animated];
38     NSLog(@"FKSecondViewController---viewDidDisappear");
39 }
40
41 - (void)dealloc
42 {
43     NSLog(@"FKSecondViewController---dealloc");
44 }

3,开始执行,观察打印信息

3.1,程序启动完成时:

2015-04-08 22:52:25.314 01-测试Navigation[735:30225] FKOneViewController---loadView

2015-04-08 22:52:25.315 01-测试Navigation[735:30225] FKOneViewController---viewDidLoad

2015-04-08 22:52:25.316 01-测试Navigation[735:30225] FKOneViewController---viewWillAppear

2015-04-08 22:52:25.406 01-测试Navigation[735:30225] FKOneViewController---viewDidAppear

3.2,点击button跳转时:

2015-04-08 22:54:08.657 01-测试Navigation[735:30225] FKSecondViewController---loadView

2015-04-08 22:54:08.657 01-测试Navigation[735:30225] FKSecondViewController---viewDidLoad

2015-04-08 22:54:08.657 01-测试Navigation[735:30225] FKOneViewController---viewWillDisappear

2015-04-08 22:54:08.658 01-测试Navigation[735:30225] FKSecondViewController---viewWillAppear

2015-04-08 22:54:09.170 01-测试Navigation[735:30225] FKOneViewController---viewDidDisappear

2015-04-08 22:54:09.171 01-测试Navigation[735:30225] FKSecondViewController---viewDidAppear

3.3,点击返回箭头时:

2015-04-08 22:55:38.856 01-测试Navigation[735:30225] FKSecondViewController---viewWillDisappear

2015-04-08 22:55:38.856 01-测试Navigation[735:30225] FKOneViewController---viewWillAppear

2015-04-08 22:55:39.361 01-测试Navigation[735:30225] FKSecondViewController---viewDidDisappear

2015-04-08 22:55:39.361 01-测试Navigation[735:30225] FKOneViewController---viewDidAppear

2015-04-08 22:55:39.361 01-测试Navigation[735:30225] FKSecondViewController---dealloc

3.4,再次点击button时:

2015-04-08 22:57:03.755 01-测试Navigation[735:30225] FKSecondViewController---loadView

2015-04-08 22:57:03.756 01-测试Navigation[735:30225] FKSecondViewController---viewDidLoad

2015-04-08 22:57:03.756 01-测试Navigation[735:30225] FKOneViewController---viewWillDisappear

2015-04-08 22:57:03.756 01-测试Navigation[735:30225] FKSecondViewController---viewWillAppear

2015-04-08 22:57:04.263 01-测试Navigation[735:30225] FKOneViewController---viewDidDisappear

2015-04-08 22:57:04.264 01-测试Navigation[735:30225] FKSecondViewController---viewDidAppear

时间: 2024-10-23 02:21:11

UINavigationController管理view的方法的相关文章

ios代码分块管理的一些方法

ios代码分块管理的一些方法 by 伍雪颖 内联的写法: self.backgroundView = ({ UIView *view = [[UIView alloc] initWithFrame:self.view.bounds]; view.backgroundColor = [UIColor redColor]; view.alpha = 0.8f; view; }); [self.view addSubview:self.backgroundView]; block的写法: self.b

Android应用自定义View绘制方法手册

背景 这篇迟迟难产的文章算是对2015前半年的一个交代吧,那时候有一哥们要求来一发Android Canvas相关总结,这哥们还打赏了,实在不好意思,可是这事一放就给放忘了,最近群里小伙伴催着说没更新博客,坐等更新啥的,随先有这么一篇Android应用开发超级基础的文章诞生了(因为这种文章最好写哈,就是用熟了就行).不得不说下这么久为何一直没更新博客的原因了,首先遇上了过年,我个人崇尚过节就该放下一切好好陪陪亲人,珍惜在一起的时光:其次今年开年很是蛋疼,不是不顺当就是深深的觉得被坑,所以心情也就

ngui3.5.7 版本Scroll View实现方法

现在网上的教材都是老版本的,现在的版本并没有Drag Panel Contents脚本,所以我对着现在的DEMO琢磨出了实现方法 第一,创建NGUI ui,其他组件不必创建,我只要NGUI这个摄影机,将这个NGUI设置为2D层,下面子组件都属于2D层 创建Scroll View,之后在下面创建Grid把他里面的脚本去掉,添加UICenterOnChild这个脚本,之后在Grid下面创建你要用的组件,在这些组件上添加UIDrag Scroll View和UICenter On Click 还有Bo

Android编程动态创建视图View的方法

在Android开 发中,在Activity中关联视图View是一般使用setContentView方法,该方法一种参数是使用XML资源直接创 建:setContentView (int layoutResID),指定layout中的一个XML的ID即可,这种方法简单.另一个方法是 setContentView(android.view.View),参数是指定一个视图View对象,这种方法可以使用自定义的视图类. 在一些场合中,需要对View进行一些定制处理,比如获取到Canvas进行图像绘制,

线程管理四种方法

进程:程序在计算机的一次运行活动,一个程序就是一个进程,在iOS中一个app就是一个进程 线程:程序运行的最小单元,一个进程中至少有一个线程(主线程) 一. 通过NSObject的方法管理线程 这种方法会帮助我们自己主动开辟一个后台线程,不须要自己创建 參数:(1)在这个后台线程中运行的方法 參数:(2)用于传递參数,没有为nil [self performSelectorInBackground:@selector(banZhuanPlus) withObject:nil]; } 二.通过NS

绩效管理的改善方法与考核方法

绩效管理的改善方法与考核方法 作者:张国祥 2014年8月15日 说明:本文主要内容摘自笔者即将出版的专著<公司化运作指南>上篇管理体系建设第七章. 绩效是工作的有效成果.员工绩效就是员工工作的有效成果,企业绩效就是企业组织有效业绩的总和. 所谓绩效管理就是对绩效目标设立.达成.评价.运用.提升的循环管理过程. 企业管理本质上就是绩效管理.采用什么方法提高绩效管理水平因企业而异. 本文主要介绍绩效改善方法和考核方法. 一.绩效改善方法 绩效已经产生,怎么考核都无法改变结果.只有改变绩效产生的过

[转]Android View.onMeasure方法的理解

转自:http://blog.sina.com.cn/s/blog_61fbf8d10100zzoy.html Android View.onMeasure方法的理解 View在屏幕上显示出来要先经过measure(计算)和layout(布局).1.什么时候调用onMeasure方法? 当控件的父元素正要放置该控件时调用.父元素会问子控件一个问题,“你想要用多大地方啊?”,然后传入两个参数——widthMeasureSpec和heightMeasureSpec.这两个参数指明控件可获得的空间以及

objective C 内存管理及属性方法详解

oc为每个对象提供一个内部计数器,这个计数器跟踪对象的引用计数,当对象被创建或拷贝时,引用计数为1,每次保持对象时,调用retain接口,引用计数加1,如果不需要这个对象时调用release,引用计数减1,当对像的引用计数为0时,系统就会释放掉这块内存,释放对象调用dealloc 当对象包含其他对象时,就得在dealloc中自己释放他们 NSObject是IOS所有类的基类 有两个基本函数,alloc和dealloc alloc类似于C++的new,dealloc类似于delete 当对象的re

UITableViewController子类分离self.tableView和self.view的方法

当一个view上显示的内容能够用一个UITableView实现,可以通过子类化一个UITableViewController控制器,上面提供了一个UITableView对象,不需要自己维护其frame,使用起来还是挺方便的.但是当在该控制器的view上添加其他的视图时,会出现无论如何都会添加的self.tableView上,原因是在UITableViewController子类中,self.view和self.tableView都是同一个对象,都是一个UITableView.本文主要是分离sel