определить cclayer в .h файле - PullRequest
0 голосов
/ 02 февраля 2012

По моему, я определил CCLayer следующим образом:

@interface MyLayer : CCLayer {
    CCLayer * referenceLayer; 
}

Как мне объявить его для использования в + (CCScene *) сцене?

Как это?

@property (nonatomic, retain) CCLayer *referenceLayer;

1 Ответ

0 голосов
/ 02 февраля 2012

Поскольку + (id)scene является методом класса, вы не можете получить доступ к свойству ivar / из него. Одним из возможных решений является наличие статической переменной в файле layer.m, как в следующем фрагменте:

static CCScene* _scene = nil;

+ (id)scene {
   if (_scene == nil) {
      _scene = [[CCScene node] retain];
      //-- further scene initializaion
   }
   return _scene;
 }

У этого простого подхода есть недостаток: у вас может быть только один такой слой вокруг.

...