2011-04-26 182 views
0

我不清楚我應該在哪裏創建我的對象。如果我在ViewController的viewDidLoad中創建它們,顯然它們不能在該方法之外訪問。例如,當一個UIButton在View中被觸摸時,我想要修改我的對象。但是,如果對象是在viewDidLoad中創建的(例如),觸摸UIButton時觸發的IBAction不知道我的對象。在哪裏創建實例

我很明顯缺少一些非常基本的東西,並會欣賞一些指針。

回答

1

您可以在viewDidLoad中創建它們,但爲了使它們在您的實例中可訪問,您必須使它們成爲ivars(實例變量)或屬性。

您可以在cocoacast.com上閱讀關於Properties in Objective-C 2.0的更多信息。

我建議蘋果公司的官書The Objective-C Programming Language

+0

感謝您的參考。我在我的ViewController的.h中創建了一個屬性,並將其合成到.m中。要創建屬性,我必須#將我的對象的.h文件導入到ViewController的.h文件中(這感覺不對 - 我以爲你只能導入到.m文件中)。無論如何,當我在viewDidLoad方法中創建實例時,我被告知「本地聲明隱藏實例變量」 – Glib 2011-04-26 09:30:51

+0

1.您只導入頭文件!不要導入.m文件。而且絕對沒問題,在你的視圖控制器的頭文件中導入你的classe頭文件。 2.當屬性與方法中的參數或局部變量具有相同的名稱時,會發生這種情況。我建議在參數名稱上加上一些命名對照,比如aTableView或anEmptyPlaceholder,它們都是前綴。 – 2011-04-26 10:59:44

0

聲明一個UIButton的在.h文件...那麼你就可以能夠在任何地方訪問按鈕...

0

如果您想訪問狀態,您只需聲明該狀態(狀態聲明)應該在.h文件中的任何位置。狀態可以根據用法在viewdidload或任何方法中進行分配。