2012-05-02 38 views
0

想象一下普通的UIViewController子类。我们想要在-viewDidWhatever之前执行“设置内容”,但问题是有三种方法可能被调用,要么是-initWithNibName,-initWithCoder,要么只是-init,具体取决于它是如何创建的。Obj-C方法命名:设置方法

解决方法是创建-setup从所有这三个被调用,但我有点不确定名称。我的问题是:这种方法是否有任何标准命名?

+2

'setup'听起来很好,我不确定你期望在这里得到一个“正确的”答案吗? viewDidLoad是在视图控制器中安装东西的传统地方。 – jrturton

+1

这只是个人喜好,所以它会被关闭。就我个人而言,我使用了一种叫做' - (void)commonInit'的方法,纯粹是这样,它仍然有init –

+0

这个词根据被调用的init或initWithNibName:bundle被忽略,应该没有问题。 ,因为他们最终都应该调用指定的初始化程序,不管那个DI是他们中的一员还是其他人。 –

回答

0

根据你想要做什么,你可以把它放在+ (void)initialize,它是从NSObject继承,并会自动在类收到它的第一条消息之前被调用。

看一看这里:Apple Developer Library: NSObject Class Reference

+3

该方法无法访问任何实例变量。 –

+1

...或一个实例 – jrturton

2

这样做时,我已经普遍把它命名为-setup自己。