Общий объект с другими классами? - PullRequest
0 голосов
/ 13 апреля 2011

Я только начал изучать цель 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 Ответ

1 голос
/ 13 апреля 2011

Относительно «Имя свойства не найдено», я предполагаю, что это ошибка компиляции. Вы, вероятно, не смогли #import PlayerProfile.h в GameViewController.

Если gameViewController равно nil в GameViewController, то либо вы фактически его не инициализировали, либо playerModel равно nil. Вы уверены, что проверяете его после запуска viewDidLoad? Это может быть позже, чем вы думаете.

...