2016-09-21 3 views
0

Я работаю над загрузкой изображений из каталога документов с помощью SDWEBImage и показывая по UICollectionView.Об утечке памяти в IOS

Я продолжаю рушиться, говоря вам «Received memory warning». Поэтому, если кто-нибудь знает лучшее решение для загрузки изображений из каталога документов, пожалуйста, помогите. Спасибо.

Это мое использование памяти и проблема

enter image description here

утечка Для загрузки изображений с помощью SDWebImage я использую ниже код

NSURL *imgURL = [NSURL fileURLWithPath:imagePath]; 
[cell.imgViewForCategory sd_setImageWithURL:imgURL placeholderImage:[UIImage imageNamed:@"testImage.jpg"] options:SDWebImageCacheMemoryOnly]; 

здесь imagePath это мой Document Directory путь моего изображения.

+0

Как вы загружали изображения из документа? Как ваш код? – SeanChense

+0

, пожалуйста, уточните мой обновленный вопрос –

+0

Насколько велика ваша фотография? – SeanChense

ответ

0

Лучше использовать AutoReleasePool, чтобы избежать утечки памяти.

for (NSString *imageName in names) { 
    @autoreleasepool { 
     UIImage *image = [UIImage imageWithName:imageName]; 
    } 
} 
+0

Нет, он не работает, так как я загружаю эти изображения в виде коллекции, прокручивая собранную им коллекцию, произнося «Предупреждение о принимаемой памяти» –

+1

ARC уже обрабатывает автоматический выпуск, поэтому '@ autoreleasepool' здесь не имеет никакого эффекта. Я полагаю, проблема, лежащая где-то в другом месте – Tj3n

+0

@ Tj3n Но этот трюк может избежать пика памяти в соответствии с http://www.apress.com/9781430241164 – SeanChense

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