2011-04-13 96 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