добавление объекта NSInteger в NSMutableArray - PullRequest
7 голосов
/ 22 декабря 2011

У меня есть NSMutableArray

@interface DetailViewController : UIViewController <UITableViewDelegate, UITableViewDataSource> {

NSMutableArray *reponses;
}
@property (nonatomic, retain) NSMutableArray *reponses;

@end

и я пытаюсь добавить в свой массив объект NSInteger:

@synthesize reponses;



NSInteger val2 = [indexPath row];
[reponses addObject:[NSNumber numberWithInteger:val2]];
NSLog(@"the array is %@ and the value is %i",reponses, val2);

не будет работать объект не был добавлен в массив, вот что показывает консоль:

the array is (null) and the value is 2

Ответы [ 3 ]

8 голосов
/ 22 декабря 2011

@ Омз: верно. Убедитесь, что массив выделен и инициализирован. Пожалуйста, проверьте следующий код

NSMutableArray *array = [[NSMutableArray alloc] init];
NSInteger num = 7;
NSNumber *number = [NSNumber numberWithInt:num];
[ar addObject:number];
NSLog(@"Array %@",array);

Я проверил это, и оно работает. Если array больше не нужен, убедитесь, что вы release.

4 голосов
/ 22 декабря 2011

Вы не инициализируете свой массив, поэтому он все равно nil, когда вы пытаетесь добавить к нему.

self.responses = [NSMutableArray array];
//now you can add to it.
2 голосов
/ 22 декабря 2011

Вы не инициализировали массив ответов.В вашем коде может быть viewDidLoad, выполните:

reponses = [[NSMutableArray alloc] init];

Затем добавьте объект в ваш массив.

NSInteger val2 = [indexPath row];
[self.reponses addObject:[NSNumber numberWithInteger:val2]];

Это должно работать.

...