`
prevention
  • 浏览: 70754 次
社区版块
存档分类
最新评论

iOS Dev (43) 用loadView必须要注意的几点

 
阅读更多

iOS Dev (43) 用loadView必须要注意的几点

永远不要主动调用 loadView 方法

ViewController 会在 view 的属性被请求且当前 view 为 nil 时调用 loadView。

如果你是用 xib 创建 view 并初始化 ViewController,意味着你要使用 initWithNibName:bundle: 方法,则不要覆盖 loadView 方法。

如果你是手动创建 view,就要覆盖该方法。

永远不要在覆盖 loadView 方法时使用 [super loadView]

loadView 方法是查看你有木有 xib,有的话就用 xib 加载基本信息,木有的话就会创建一个空白的 UIView,然后把它作为这个 ViewController 的 view。

所以你覆盖这个函数的时候,也按照这个方式是实现就好了。只不过你不是创建一个空白的 UIView,那也没有意义。你创建一个你想要的 UIView,一定要注意这个 UIView 实例必须是给这个 ViewController 独享的(不能被其他实例共享),否则会出问题的。

在 loadView 中实例化 view,在 viewDidLoad 中自定义 view

你只需要在 loadView 时创建 view,不要对它做什么自定义的。

在内存紧张时,程序会调用 viewDidUnload 来释放内存,这个方法是与 viewDidLoad 相对的。当程序内存不那么紧张,且需要用到这个 ViewController 时,则会再次调用 viewDidLoad。

viewDidLoad 和 viewDidUnload 中的操作是相对的。

什么时候执行的 loadView 和 viewDidLoad

一般在初学时,不会用到太复杂的,会发现是在这个 ViewController 被设置为 visible 时执行的这两个方法。再进一步的解释,以后再介绍。

Reference

http://my.oschina.net/amoyai/blog/90261


转载请注明来自大锐哥的博客:http://prevention.iteye.com

分享到:
评论

相关推荐

Global site tag (gtag.js) - Google Analytics