Изменение размера и обрезка изображений перед отображением в UITableViewCells
У меня есть UITableView в моем приложении, и я должен загрузить некоторые изображения, которые имеют фиксированную ширину, но разной высоты. Я загружаю изображения асинхронно, используя NSOperationQueue, и для изменения размера и обрезки я попытался использовать решение, предоставленное Jane Sales в этом посте.текст ссылки.
я создал пользовательский класс UITableViewCell, и в нем у меня есть метод, который вызывается, когда операция в очереди завершает загрузку изображения. Метод вызывается правильно, и изображения отображаются. Когда я пытаюсь изменить размеры изображений, используя метод, предложенный Джейн, появляются проблемы. Когда он достигает[sourceImage drawInRect: thumbnailRect]; я получаю ошибку неверного доступа exec и могуне понимаю, почему. Я называю метод так:
- (void) setupImage:(UIImage *) anImage{
UIImage *resized = [anImage imageByScalingAndCroppingForSize:CGSizeMake(64, 59)];
if(resized == nil)
resized = [UIImage newImageFromResource:@"thumb2.png"];
[thumbnailView setImage:resized];
}
setupImage вызывается, когда NSOperationQueue завершает действие загрузкикартинка.
Может кто-нибудь дать мне понять, почему я получаю ошибку exec bad access при попытке изменить размеры и обрезать изображения? Я пытался использовать ту же функцию за пределами представления таблицы. В 80% случаев это работает, но есть случаи, когда я получаю ту же ошибку плохого доступа exec.
Заранее спасибо, Сорин