Это может звучать новичком, но я новичок в iOS-разработчике.ARC: Правильно ли этот подход
У меня есть код в моем проекте, проект включен ARC, и я получаю ошибку при его выполнении (плохой доступ) и хотел бы понять причину проблемы и решить ее.
на некоторой кнопки нажмите следующий код вызывается в MTClassA.m
файле
-(void) someMethod
{
for (int i = 0; i < N; i++) {
...
(param1 and param2 are location variables)
...
mFlickr = [[MTFlickr alloc] initWithParam1:param1 param2:mparam2];
mFlickr.delegate = self;
[mFlickr fetchImages];
}
}
в MTClassA.h
заголовка файла mFlickr объявлен как MTFlickr* mFlickr
так по умолчанию это его __strong
классификатором.
функция обратного вызова fetchImages
класса следующие
- (void)didRecieveImageLinksFromFlickr:(NSArray*)response
param1:(NSString*)param1 param2:(NSString*)param2 {
...
}
Поэтому в основном я хотел бы знать, правильно ли создавать mFlickr объекты таким образом в течение цикла и ожидать обратного вызова, чтобы правильно работать, если нет, пожалуйста, предложить что нужно изменить?
P.S. Мне нужно изменить mFlickr на локальную переменную? Если да, то как мне следует гарантировать, что методы param1 и param2 являются тем, что я прошел для обучения итерации в цикле?
Как-то вам нужно сохранить несколько объектов «MTFlickr» (возможно, в «NSMutableArray»), потому что ваш цикл поддерживает только текущий объект только в том случае, если у вас есть только один предполагаемый сильный указатель, который по этой области, 'mFlickr'. – holex