InitWithNibName和viewDidLoad?

时间:2012-05-21 11:26:51

标签: iphone objective-c init viewdidload

  

可能重复:
  initWithNibName VS viewDidLoad

我是iOS开发的新手。我想知道这两个函数之间的主要区别吗?

感谢您的帮助

2 个答案:

答案 0 :(得分:5)

    viewDidLoad

在视图加载并启动/取消归档并加载到内存中时调用。这是一个很好的定制停止。

 initWithNibName:

用于使用xib文件的名称初始化某个类(它是一个覆盖的init方法),bundle参数指定文件的位置,您将为主包传递nil,即项目文件夹。

您应该在viewDidLoad中设置属性。 initWithNibName:是从nib文件创建控制器实例时调用的。我不会在那里放置自定义代码。

答案 1 :(得分:2)

viewDidLoad:

viewDidLoad是iPhone应用程序生命周期的一部分。在读取.xib文件并将插座和操作连接到视图控制器之后调用此方法。在此方法中,您可以使用您的商店进行分配。当你的视图被加载和卸载时,会多次调用此方法。

<强> initWithNibName:

此方法是UIViewController类的指定初始化程序。无论何时在代码中创建UIViewController对象,都会使用它。此方法设置UIViewController以便能够按需加载nib。当您在init方法中执行不同的逻辑时,此方法很有用。