2011-04-13 129 views
0

我剛開始學習目標c。我有這些小問題和問題,希望你們能幫助我。與其他類共享對象?

我有一個ViewController,我把它叫做:GameViewController。

此GameViewController將調用模型類「PlayerModel」(NSObject),並且此PlayerModel包含「PlayerProfile」對象(其NSObject)。

的viewDidLoad中在GameViewController將調用並啓動模型類:

playerModel = [[PlayerModel alloc] initWithInt:playerID]; 

然後,在我的PlayerModel initWithInt方法,我通過在線數據庫獲取數據填充PlayerProfile數據。我設法填充數據,但是當我想它調用gameViewController

// This is gameViewController.m 
.... 
playerModel.playerProfile.name; 

但我得到這個錯誤信息:

「屬性名的類型PlayerProfile的對象未找到」我的NSLog的playerProfile在gameViewController,它的「(null)」,而當我NSLog中的playerModel,它有一些值。我如何傳遞這個值並使其具有通用性,以便其他類可以使用它(設置值)?

回答

1

關於「未找到屬性名稱」,我認爲這是一個編譯錯誤。您可能沒有在GameViewController#import PlayerProfile.h

如果gameViewControllerGameViewControllernil那麼無論你有沒有真正初始化它,或playerModelnil。你確定在viewDidLoad實際運行後檢查它嗎?這可能比你想象的要晚。

+0

你是對的,我沒有在gameviewcontroller中導入PlayerProfile.h。 Bcuz我th我導入PlayerModel,和PlayerModel導入PlayerProfile,所以我tho我不需要導入PlayerProfile。謝謝,我今天學到了一些東西。無論如何,在我執行導入之後,沒有編譯錯誤,但它仍然爲零。我不知道我的做法是否正確,也許我的程序流程不正確。你通常做什麼,或者這種情況下的常見做法是什麼? – phpnoob 2011-04-13 03:46:55

+0

我找到了我的答案。要分享課程,可以使用單身人士。例如:http://classroomm.com/objective-c/index.php?action=printpage;topic=4090.0 – phpnoob 2011-04-13 10:22:20