Почему мое авто синглтона не заполняется автоматически? - PullRequest
0 голосов
/ 19 мая 2011

Anyidea, почему автозаполнение не работает со свойством spaceScene?

#import <Foundation/Foundation.h>
#import "cocos2d.h"
@class SpaceScene;


@interface SpaceSceneSingleton : NSObject 
{    
    SpaceScene *spaceScene;


}

@property (assign) SpaceScene *spaceScene;


+(SpaceSceneSingleton*)sharedSpaceSceneSingleton;
-(void) addChildToSceneWith:(CCNode *) node andWithZindex: (int) zIndex;
-(void) runAction:(CCAction*) action;
-(void) setTouchIsEnabled:(BOOL) isEnabled;
-(void) removeChild: (CCNode *) child;
@end


#import "SpaceSceneSingleton.h"


@implementation SpaceSceneSingleton
@synthesize spaceScene;

static SpaceSceneSingleton* _sharedSpaceSceneSingleton = nil;

+(SpaceSceneSingleton*)sharedSpaceSceneSingleton;
{
    @synchronized([SpaceSceneSingleton class])
    {
        if (!_sharedSpaceSceneSingleton)
            [[self alloc] init];

        return _sharedSpaceSceneSingleton;
    }

    return nil;
}



+(id)alloc
{
    @synchronized([SpaceSceneSingleton class])
    {
        NSAssert(_sharedSpaceSceneSingleton == nil, @"Attempted to allocate a second instance of a singleton.");
        _sharedSpaceSceneSingleton = [super alloc];
        return _sharedSpaceSceneSingleton;
    }

    return nil;
}

-(id)init {
    self = [super init];
    if (self != nil) {
        // initialize stuff here
    }

    return self;
}

-(void) addChildToSceneWith:(CCNode *) node andWithZindex: (int) zIndex
{
    [self.spaceScene addChild:node z:zIndex];

}


-(void) runAction:(CCAction*) action
{

//[self.spaceScene add

}

-(void) setTouchIsEnabled:(BOOL) isEnabled
{

}

-(void) removeChild: (CCNode *) child
{
}
@end

1 Ответ

2 голосов
/ 19 мая 2011

Вы только объявили @class SpaceScene;, поэтому в этой области ничего более не известно, чем то, что класс с именем SpaceScene может существовать.Может быть, поможет импорт SpaceScene.h.

Я бы даже сказал, что это должно компилироваться с предупреждениями.Есть ли это?

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