loadView,viewDidLoad等几种方法的调用总结

 我来答
手机用户10463
2013-10-24 · 超过75用户采纳过TA的回答
知道答主
回答量:118
采纳率:0%
帮助的人:170万
展开全部
viewDidLoad用于初始化,加载时用到的。 loadView 此方法在控制器的view为nil的时候被调用。虽然经常说loadView是使用代码生成视图的时候,当视图第一次载入的时候调用的方法。用于使用(写)代码来实现控件 。用于使用代码生成控件的函数。但是经过自己实际断点单步操作发现,不管用不用nib,都最先调用loadView,所以说loadView 此方法在控制器的view为nil的时候就会被调用。一般在使用nib后就会把loadView注释掉。Xcode4.2创建的时候就给注释好了。 当手写代码时一定注意分配UIView.自己经常用的有两种方法,如下:- (void) loadView { UIView *view = [ [ UIView alloc] initWithFrame:[ UIScreen mainScreen] .applicationFrame] ; self.view = view; [ view release] ;}- (void) loadView { [super loadView];}但是第二种方法[super loadView]方法不被提倡,也不是苹果所希望的,就自己的几个小项目来看,就有一次使用第二种方法崩了,第一种就可以,所以还是方法一比较保险。就是你的loadView中应该有self.view = 这样的行为。 viewDidUnload方法‍ 当系统内存吃紧的时候会调用该方法,一般在这个类中添加的代码是赋空代码,网上的解释是这样的: 在该方法中释放其他与view有关的对象、其他在运行时创建(但非系统必须)的对象、在viewDidLoad中被创建的对象、缓存数据等 release对象后,将对象置为nil(IBOutlet只需要将其置为nil,系统release view时已经将其release掉了) 一般认为viewDidUnload是viewDidLoad的镜像,因为当view被重新请求时,viewDidLoad还会重新被执行 viewDidUnload中被release的对象必须是很容易被重新创建的对象(比如在viewDidLoad或其他方法中创建的对象),不要release用户数据或其他很难被重新创建的对象 viewWillAppear:方法更新准备显示的视图的信息。调用时,视图可能还没有被加载。 使用viewDidAppear:来触发视图完全显示在屏幕上之后的行为,例如任何动画。
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式