NSMutableArray в пределах синглтон-класса всегда возвращает счетчик 0 / никогда не сохраняет свои объекты - PullRequest
0 голосов
/ 06 декабря 2011

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

@interface MyClass : NSObject {
    NSMutableArray * myArray;
}

+ (MyClass*) instance;
@property(nonatomic,retain)NSMutableArray *myArray;

Затем в реализации

static MyClass * myinstance;
@synthesize myArray;

+ (MyClass*) instance {
    if(myinstance == nil)
        myinstance = [[MyClass alloc] init];

    return myinstance;
}


- (id) init {
    if(self = [super init]) {
      myArray = [[NSMutableArray alloc] initWithCapacity:2];
      [myArray addObject:@"Trauma"];
     }
     return self;
}

Однако, когда я пытаюсь получить доступ к нему для просмотра таблицы, он всегда возвращает 0:

[[[MyClass instance] myArray] count];

Немного неуверен в том, что я делаю неправильно

1 Ответ

2 голосов
/ 06 декабря 2011

Метод, который возвращает экземпляр вашего синглтона, называется +instance, но при попытке получить доступ к вашему синглтону вы используете +myinstance. Ваш экземпляр MyClass скорее всего ноль.

...