Я имел дело с этой проблемой, обходя ее в течение достаточно долгого времени, но я действительно хотел бы знать правильный способ обработки ситуации:
Если я получу изображение в виде NSData из CoreData, какИтак:
NSData *myImageData = myEntity.Image;
cell.imageView.image = [UIImage imageWithData:myImageData];
[cell.imageView setContentMode:UIViewContentModeScaleAspectFit];
Если изображение больше, чем CGRect UIImageView, изображение не ограничивается CGRect UIImageView.
То, что я сейчас делаю, чтобы обойти эту проблему, используя код, похожий на:
CGSize size = CGSizeMake(98, 98);
UIGraphicsBeginImageContext(size);
[image drawInRect:CGRectMake(0, 0, size.width, size.height)];
UIImage *scaledImage = UIGraphicsGetImageFromCurrentImageContext();
UIGraphicsEndImageContext();
cell.imageView.image = scaledImage;
Что работает, но я бы, конечно, хотел, чтобы кто-то сказал мне, что я делаю неправильно сПодход ContentMode в том виде, в каком он должен работать.
Спасибо, что нашли время прочитать мой вопрос.