Как настроить класс на два шага вниз? - PullRequest
0 голосов
/ 02 августа 2010

Я немного запутался, как настроить класс, который находится на два шага ниже самого верхнего.

Например, скажем, у меня есть игра BoardGame.Один из параметров которого в numberOfSquares.

Классы настраиваются следующим образом:

BoardGameSetupViewController > BoardGamePlayViewController > GameEngine

BoardGameSetupViewController создает экземпляр BoardGamePlayViewController после выбора количества квадратов.BoardGamePlayViewController имеет класс GameEngine как @property, который был @synthesised.

Так как мне настроить GameEngine непосредственно из BoardGameSetupViewController?Например, чтобы настроить numberOfSquares?

Итак, в BoardGameSetupViewController я хочу установить свойства движка, но, похоже, они не передаются.

BoardGamePlayViewController *boardGamePlayViewController = [[BoardGamePlayViewController alloc] initWithNibName:@"BoardGameView" bundle:nil];

// this line doesn't work
boardGamePlayViewController.gameEngine.numberOfSquares = 12;

1 Ответ

3 голосов
/ 02 августа 2010

Сначала вам нужно создать экземпляр GameAEngine, прежде чем вы сделаете правление назначения GamePlayViewController.gameEngine.numberOfSquares = 12; Таким образом,

GameEngine *gameEngine = [[GameEngine alloc] init];
boardGamePlayViewController.gameEngine = gameEngine;
boardGamePlayViewController.gameEngine.numberOfSquares = 12;

должно работать.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...