2010-09-14 3 views
0

Я начал работу над побочным проектом, поэтому кодовая база очень маленькая, очень мало, что может пойти не так. Что-то странное происходит. В viewDidLoad I инициализируется набор массивов как свойство:Доступ к свойствам внутри методов без инициализации дает плохой доступ

@property (nonatomic, retain) NSMutableArray * story_array; 

И залейте его данными. Эта распечатка отлично:

NSLog(@"%@", ((ArticlePreview *)[self.story_array objectAtIndex:0]).article); 

У меня есть жест распознаватель:

UITapGestureRecognizer * openStory = [[UITapGestureRecognizer alloc] initWithTarget:self action:@selector(showStory)]; 

надавив на нее вызывает метод, чья первая строка это (т.е. тот же NSLog):

NSLog(@"%@", ((ArticlePreview *)[self.story_array objectAtIndex:0]).article); 

Но это вызывает плохой доступ. Доступ к самому story_array в порядке (он скажет, что у него есть много объектов ArticlePreview внутри), но доступ к их полям - нет-нет.

story_array является init'ed следующим образом:

self.story_array = [[NSMutableArray Alloc] инициализации];

+0

Вы не разместили самые важные строки - как вы на самом деле создаете и инициализируете свой метод story_array в методе viewDidLoad ... – Vladimir

+0

А, спасибо. Это простой [[NSMutableArray alloc] init]; Я добавлю это. – mtrc

ответ

0

Назначение полям объекта «Просмотр изображения» не выполнено должным образом. У меня был:

someField = someValue; 

мне нужно:

self.someField = someValue; 

Я до сих пор считаю, что немного сумасшедшим, но там вы идете. Решаемые.

Смежные вопросы