Шаблон Singleton для обмена данными между объектами - PullRequest
0 голосов
/ 01 марта 2012

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

SearchData.m

@implementation SearchData
@synthesize theName = _theName;

-(id)init
{
    if(self = [super init])
    {
        _theName = @"Default";
    }
    return  self;
}

static SearchData *sharedSingleton = NULL;

+(SearchData *)sharedSearchData
{
    @synchronized(self)
    {
        if (sharedSingleton == NULL) 
        {
            sharedSingleton = [[self alloc]init];
        }
        return sharedSingleton;
    }
}
@end

FirstView.m

...

-(id)init
{
    if (self = [super init]) 
    {
        SearchData *data = [SearchData sharedSearchData];
        self.aName = [data theName];
    }
    return self;
}

...

Проблема в том, что я получаю

Incompatible pointer types sending NSString to parameter of type NSStream.

Что здесь не так?Как передать данные в aName ivar?

Ответы [ 2 ]

2 голосов
/ 01 марта 2012

В вашем объявлении aName вы ошиблись NSString как NSStream?Странные вещи произошли.

0 голосов
/ 01 марта 2012

Потому что данные поиска (NSStream) не входят в строку NSString.Попробуйте:

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