viewDidLoad(),LoadView()
如果您在不使用xib
LoadView()
方法被调用和开发应用程序,如果有一个厦门国际银行则ViewDidLoad
方法被称为
因此,最好是使用的loadView方法。
这是不正确的。 ViewDidLoad对我来说无论如何 – MobileMon 2015-06-29 19:02:26
但是当我在ViewDidLoad中编写代码时,它也可以工作!请解释为什么这会起作用。 (我没有使用任何故事板) – 2016-03-17 13:35:15
这不是很明显吗?
viewDidLoad
被称为...当视图完成加载。
loadView
在视图被告知加载时被调用。
两者都不是好或坏。这完全取决于你的设计。
祝你好运:)
没有太多的答案。正如其他答案所述,它们的关键区别在于您是(a)使用xib/nib还是(b)以编程方式创建用户界面。 – 2013-08-23 09:40:11
ViewDidLoad
在您的视图加载完成时调用,当加载开始时调用loadView
。
当你让你看到的这些方法,明确给出了什么时候应该使用哪些功能
小费评论一个新的项目看这
/*
// Implement loadView to create a view hierarchy programmatically, without using a nib.
- (void)loadView {
}
*/
/*
// Implement viewDidLoad to do additional setup after loading the view, typically from a nib.
- (void)viewDidLoad {
[super viewDidLoad];
}
*/
这些意见是明确的,容易理解。
如果您打算使用IB来构建您的UI,则应该在viewDidLoad中执行所有后期IB初始化。如果您使用笔尖初始化控制器,则该类根本不会调用loadView。
如果在代码中初始化控制器,viewController将首先调用loadView,然后调用viewDidLoad。您可以在loadView或viewDidLoad中执行所有初始化,具体取决于您的偏好。
但是,如果您决定使用loadView,请务必在尝试读取self.view之前设置视图属性,否则您将进入无限循环并崩溃。
根据文档,你不应该调用'[super loadView]';你应该自己设置'view'属性 – user102008 2011-09-27 22:05:01
修改我的答案。什么UIViewController的loadView是初始化一个空白的视图。我想这可能会浪费,如果用户的实现取消超级设置的视图,但它不会伤害。 – futureelite7 2011-09-30 08:00:58
如果没有关联nib,视图控制器会加载与其关联的nib的视图,然后它会自动调用它的loadView()方法来填充它的View。 在这种情况下,您需要实现loadView()方法。 默认情况下它返回无
当你的视图加载到内存viewDidLoad()方法在这里被调用时,你可以根据你的要求做你的自定义初始化。
如果您从stroyboard或xib文件初始化视图,请勿重写此方法或调用[super loadView]里面。 如果您在方法内部调用[super loadView],则最好不要重写此方法,并将以下代码放到viewDidLoad方法中。
如果你以编程方式初始化你的视图,你应该永远不要调用[super loadView]。您必须将您的rootView分配给self.view属性,否则您可能会遇到完美的崩溃。
viewDidLoad()
将在您从NIB加载视图并希望在启动后执行任何自定义时使用。
LoadView()
用于以编程方式创建视图(不使用Interface Builder)。
请尝试此链接http://*.com/questions/573958/iphone-sdk-what-is-the-difference-between-loadview-and-viewdidload – visakh7 2011-03-02 05:56:34