Я создаю приложение, основной функцией которого является отображение больших изображений в виде таблицы, некоторые могут иметь ширину 1000 пикселей и размер более 1 МБ.
Я обнаружил, что старые устройства (3GS) испытывают серьезные проблемы с их обработкой и быстро отправляют предупреждения о памяти.
Я не могу понять, какие изображения вводятся, но я подумал, что смогу уменьшить их как по размеру, так и по размеру файла.Поэтому я посмотрел в
NSData *dataForJPEGFile = UIImageJPEGRepresentation(img, 0.6)
для сжатия, но я не думаю, что это помогает с предупреждением памяти
и изменением размера как:
UIImage *newImage;
UIImage *oldImage = [UIImage imageWithData:imageData] ;
UIGraphicsBeginImageContext(CGSizeMake(tempImage.size.width,tempImage.size.height));
[oldImage drawInRect:CGRectMake(0, 0,320.0f,heightScaled)];
newImage = UIGraphicsGetImageFromCurrentImageContext();
UIGraphicsEndImageContext();
, а также сhttps://github.com/AliSoftware/UIImage-Resize
По сути, я хочу взять изображение и переформатировать его так, чтобы оно было меньше по размеру и размеру файла, а затем удаляло старое.Это лучший способ сделать это?Поможет ли кэширование изображений?Как с https://github.com/rs/SDWebImage?