我刚开始学习目标c。我有这些小问题和疑问,希望你们能帮助我。
我有一个ViewController,我称之为:GameViewController。
这个GameViewController将调用一个模型类“PlayerModel”(NSObject),这个PlayerModel包含“PlayerProfile”对象(它是一个NSObject)。
GameViewController中的viewDidLoad将调用并启动模型类:
playerModel = [[PlayerModel alloc] initWithInt:playerID];
然后,在我的PlayerModel initWithInt方法中,我通过从在线数据库中提取数据来填充PlayerProfile数据。我设法填充数据,但是当我想在gameViewController中调用它时
// This is gameViewController.m
....
playerModel.playerProfile.name;
但我收到此错误消息:“在PlayerProfile类型的对象上找不到属性名称”
我在gameViewController中NSLog的playerProfile,它的“(null)”,而当我在playerModel中的NSLog时,它有一些值。如何传递这些值并使其具有通用性,以便其他类可以使用它(设置值)?
答案 0 :(得分:1)
关于“未找到属性名称”,我认为这是编译错误。您可能未能#import PlayerProfile.h
中的GameViewController
。
如果gameViewController
中的nil
为GameViewController
,则您实际上尚未对其进行初始化,或playerModel
为nil
。你确定在viewDidLoad
实际运行后检查它吗?这可能比你想象的要晚。