第一、viewDidUnload方法
1.调用时机:
内存吃紧时,在iPhone OS 3.0之前didReceiveMemoryWarning是释放无用内存的唯一方式,但是OS 3.0及以后viewDidUnload方法是更好的方。当系统内存吃紧的时候会调用该方法,释放view,释放的view必须是已经在内存的view,即通过viewdidload之后的view,而不是controller,在iphone应用程序,可以controller已经创建,但是view可以没有进内存,另外该方法不会是viewController release。
注意此时释放的对象应该是所有IBOutlet(无论是property还是实例变量)置为nil,在该方法中释放其他与view有关的对象、其他在运行时创建(但非系统必须)的对象、在viewDidLoad中被创建的对象、缓存数据等release对象后,将对象置为nil
注意:系统view时已经将其release掉了, 即self.view此时已经为空)
2.释放的对象
viewDidUnload中被release的对象必须是很容易被重新创建的对象(比如在viewDidLoad或其他方法中创建的对象),不要release用户数据或其他很难被重新创建的对象。
viewDidUnload 不会引发dealloc方法
第二.viewDidUnload工作内容
1、释放掉一些比较容易创建的对象,或者是一些比较占资源的对象(图片、音频等)
2、如果界
1.调用时机:
内存吃紧时,在iPhone OS 3.0之前didReceiveMemoryWarning是释放无用内存的唯一方式,但是OS 3.0及以后viewDidUnload方法是更好的方。当系统内存吃紧的时候会调用该方法,释放view,释放的view必须是已经在内存的view,即通过viewdidload之后的view,而不是controller,在iphone应用程序,可以controller已经创建,但是view可以没有进内存,另外该方法不会是viewController release。
注意此时释放的对象应该是所有IBOutlet(无论是property还是实例变量)置为nil,在该方法中释放其他与view有关的对象、其他在运行时创建(但非系统必须)的对象、在viewDidLoad中被创建的对象、缓存数据等release对象后,将对象置为nil
注意:系统view时已经将其release掉了, 即self.view此时已经为空)
2.释放的对象
viewDidUnload中被release的对象必须是很容易被重新创建的对象(比如在viewDidLoad或其他方法中创建的对象),不要release用户数据或其他很难被重新创建的对象。
viewDidUnload 不会引发dealloc方法
第二.viewDidUnload工作内容
1、释放掉一些比较容易创建的对象,或者是一些比较占资源的对象(图片、音频等)
2、如果界