Невозможно добавить объект в массив NSMutableArray. - PullRequest
4 голосов
/ 12 марта 2012
@interface SimataDetailViewController () 

@property Simata *simata;

@property (nonatomic, copy) NSMutableArray *simataList;

@end

@implementation SimataDetailViewController

@synthesize simataDataController=_simataDataController;
@synthesize category=_category;
@synthesize simata=_simata;
@synthesize simataList=_simataList;

#pragma mark - Managing the detail item



- (void) getSimataForCategory: (NSString *) inputCategory {

    unsigned count = [self.simataDataController.masterList2 count];


    while (count--) {

        if ([[[self.simataDataController objectSimataInListAtIndex:count] categoryCode] isEqual:inputCategory]){
            self.simata= [self.simataDataController objectSimataInListAtIndex:count];

            [self.simataList addObject:self.simata];                       
        }

    }

    NSLog(@"count, %u", [self.simataList count]);


}

Здравствуйте, это мой первый пост, поэтому наберитесь терпения.

Я пытаюсь добавить объект self.simata в массив self.simataList, но массив остается с нулевыми объектами.Объект self.simata не является nil, и я не получаю никакой ошибки.

Что я делаю не так?

Ответы [ 2 ]

5 голосов
/ 12 марта 2012

Вы уверены, что создали экземпляр массива перед его использованием?

self.simataList =[NSMutableArray array];

Это также может быть ваш self.simata, равный nil ...

РЕДАКТИРОВАТЬ

Вы можете создать экземпляр массива в методе инициализации по умолчанию:

-(id)init
{
    self = [super init];
    if(self)
    {
        //do your object initialization here
        self.simataList =[NSMutableArray array];
    }
    return self;
}
1 голос
/ 12 марта 2012

Скорее всего, self.simataList равен нулю. Попробуйте использовать NSLogging self.simataList, а не его количество.

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