У меня есть UIViewController. В верхней части UIViewController я объявил
NSMutableArray *contacts;
В моем методе viewDidLoad
я вызываю [self getContacts]
, который в основном инициализирует мой массив contacts
. Он начинается с инициализации массива, а затем добавляет несколько объектов:
if(contacts == nil)
contacts = [[NSMutableArray alloc] init];
[contacts removeAllObjects];
[contacts addObjectsFromArray:[some objects]];
Итак, теперь мой contacts
инициализирован. В моем методе viewDidLoad я даже использую contacts
, и он прекрасно работает. Позже в методе мне нужно получить элементы contacts
, однако я получаю EXC_BAD_ACCESS. Почему это? Почему в моем массиве contacts
не хранятся объекты, которые я инициализировал в начале, и как мне это исправить?
EDIT:
Ошибка возникает, когда я выбираю NavigationBarItem, который затем вызывает метод buttonWasPressed
. В этом методе у меня просто есть следующее:
-(void)buttonWasPressed:(id)sender {
NSLog(@"button was pressed");
if(contacts == nil)
NSLog(@"contacts is nil!");
NSLog(@"contacts = %@",contacts);
}
И я вижу напечатанное «кнопка была нажата», но затем появляется EXEC_BAD_ACCESS.