loadView 和 viewDidLoad 执行的问题

  1. 首先,我们需要知道在viewController 的生命周期

  2. 当在loadView里面重写[super loadView]的时候 父类的view视图已经加载初始化并开辟了空间,所以此时应该调用 self.view addSubView 进行子视图的加载,如果调用 self.view 等于某个子视图,那么父类初始化的view将没有指针指向。
  3. 当在loadView中没有重写super loadView的时候,应该调用self.view = 新view  否则view没有进行初始化 调用addSubView程序将会崩溃。
时间: 2024-10-08 22:50:09

loadView 和 viewDidLoad 执行的问题的相关文章

loadView 与 viewDidLoad 和 didReceiveMemoryWarning与viewDidUnload 详解

首先试验下:viewController初始化 分两个支路:initWithNibName加载初始化 及 init 直接初始化: <1>调用initWithNibName加载一个xib界面文件来实现初始化viewController: 在 self.viewController = [[[ViewController alloc] initWithNibName:@"ViewController_iPhone"bundle:nil] autorelease]; xib界面文

iOS开发之loadView和viewDidLoad总结

http://www.1000phone.net/forum.php?mod=viewthread&tid=10507&extra=page%3D1%26filter%3Dauthor%26orderby%3Ddateline%26orderby%3Ddateline iPhone开发必不可少的要用到这两个方法. 他们都可以用来在视图载入的时候,初始化一些内容. 但是他们有什么区别呢? viewDidLoad 此方法只有当view从nib文件初始化的时候才被调用.viewDidLoad用于

loadView和viewDidLoad及initWithNibName/awakeFromNib/initWithCoder

每个ios开发者对loadView和viewDidLoad肯定都很熟悉,虽然这两个函数使用上真的是非常简单,但是和类似的initWithNibName/awakeFromNib/initWithCoder放在一起还是非常容易让人混淆的. 一.loadView 永远不要主动调用这个函数.view controller会在view的property被请求并且当前view值为nil时调用这个函数.如果你手动创建view,你应该重载这个函数.如果你用IB创建view并初始化view controller

loadView与viewDidLoad不同

loadView 和 viewDidLoad 是 iPhone 开发中肯定要用到的两个方法. 他们都可以用来在视图载入的时候初始化一些内容. 但是他们有什么区别呢? viewDidLoad 方法只有当 view 从 nib 文件初始化的,  viewDidLoad 用于初始化,加载时用到. loadView 方法在控制器的 view 为 nil 的时候被调用. 此方法用于以编程的方式创建 view 的时候用到.loadView 是使用代码生成视图的时候,当视图第一次载入的时候调用的方法.用于使用

loadView与viewDidLoad

loadView 和 viewDidLoad 是 iPhone 开发中肯定要用到的两个方法. 他们都可以用来在视图载入的时候初始化一些内容. 但是他们有什么区别呢? viewDidLoad 方法只有当 view 从 nib 文件初始化的时候才被调用.viewDidLoad 用于初始化,加载时用到. loadView 方法在控制器的 view 为 nil 的时候被调用. 此方法用于以编程的方式创建 view 的时候用到.loadView 是使用代码生成视图的时候,当视图第一次载入的时候调用的方法.

loadView 与 ViewDidLoad

每个ios开发者对loadView和viewDidLoad肯定都很熟悉,虽然这两个函数使用上真的是非常简单,但是和类似的initWithNibName/awakeFromNib/initWithCoder放在一起还是非常容易让人混淆的. 一.loadView 永远不要主动调用这个函数.view controller会在view的property被请求并且当前view值为nil时调用这个函数.如果你手动创建view,你应该重载这个函数.如果你用IB创建view并初始化view controller

loadView和viewDidLoad

之前虽然用过loadView和viewDidLoad这两个方法,但没有仔细研究过,现在反过头来看下. 这些方法的执行顺序位loadView——>viewDidLoad——>viewWillAppear——>viewDidAppear①loadView是在每次访问uiviewController的view(如self.view或controller.view),并且view为nil时才会调用.作用就是创建UIViewController的view即若想自定义UIviewController

viewDidLoad执行早于initWithNibName

刚发现这个问题的时候太都头疼了,没有init怎么viewDidLoad呢?? 后来发现这是因为重载的原因,父类里面同样有initWithNibName方法,这样执行的顺序就是: initWithNibName(父类) ->  viewDidLoad (子类)-> viewDidLoad (父类)-> initWithNibName(子类) 中间的部分是交叉执行的,因为子类会调用[super viewDidLoad], 这样就会执行父类的viewDidLoad函数. 解决方法很简单:如果你

IOS loadView 和 viewDidLoad 的区别

IOS 开发 loadView 和 viewDidLoad 的区别 iPhone开发必不可少的要用到这两个方法. 他们都可以用来在视图载入的时候,初始化一些内容. 但是他们有什么区别呢? viewDidLoad 此方法只有当view从nib文件初始化的时候才被调用. loadView 此方法在控制器的view为nil的时候被调用. 此方法用于以编程的方式创建view的时候用到. 如: - ( void ) loadView { UIView *view = [ [ UIView alloc] i