想象一下普通的UIViewController
子類。我們想要在-viewDidWhatever
之前執行「設置內容」,但問題是有三種方法可能被調用,要麼是-initWithNibName
,-initWithCoder
,要麼只是-init
,具體取決於它是如何創建的。Obj-C方法命名:設置方法
解決方法是創建-setup
從所有這三個被調用,但我有點不確定名稱。我的問題是:這種方法是否有任何標準命名?
想象一下普通的UIViewController
子類。我們想要在-viewDidWhatever
之前執行「設置內容」,但問題是有三種方法可能被調用,要麼是-initWithNibName
,-initWithCoder
,要麼只是-init
,具體取決於它是如何創建的。Obj-C方法命名:設置方法
解決方法是創建-setup
從所有這三個被調用,但我有點不確定名稱。我的問題是:這種方法是否有任何標準命名?
根據你想要做什麼,你可以把它放在+ (void)initialize
,它是從NSObject
繼承,並會自動在類收到它的第一條消息之前被調用。
該方法無法訪問任何實例變量。 –
...或一個實例 – jrturton
這樣做時,我已經普遍把它命名爲-setup
自己。
'setup'聽起來很好,我不確定你期望在這裏得到一個「正確的」答案嗎? viewDidLoad是在視圖控制器中安裝東西的傳統地方。 – jrturton
這只是個人喜好,所以它會被關閉。就我個人而言,我使用了一種叫做' - (void)commonInit'的方法,純粹是這樣,它仍然有init –
這個詞根據被調用的init或initWithNibName:bundle被忽略,應該沒有問題。 ,因爲他們最終都應該調用指定的初始化程序,不管那個DI是他們中的一員還是其他人。 –