2015-03-10 2 views
0

У меня есть приложение, в котором я загружаю большое количество изображений из базы данных и показываю их в своей галерее, что я делал раньше, я получал фото url (локальный идентификатор) от PHAsset, а затем получал доступ к изображению, используя PHCacheManager, но он замедляет мою прокрутку, а также показывает лаги при обновлении изображений в новой ячейке. Я пытался использовать SDWebImage здесь, передав URL-адрес методу sd_setImageWithURL: однако я узнал, что URL-адрес на самом деле является локальным идентификатором, который не поддерживается этим методом. У нас есть другой механизм, в котором я могу использовать идентификатор для более быстрой загрузки изображений с помощью SDWebImage или любой другой структуры.SDWebImage с PHAssets

Это мой код:

NSURL *photoURL = [NSURL URLWithString:photoPath]; 
[imageView sd_setImageWithURL:photoURL placeholderImage:defaultImage]; 

photoPath путь к моему активу "текущее изображение будет загружен"

я получаю URL-адрес что-то вроде:

73F05642-CAE6-49BE-879B-9B00BF15391F/L0/001

Пожалуйста, спросите, нужна ли дополнительная информация, я новичок в iOS и все это. Спасибо заранее

ответ

1

все уже поздно, но я отправляю его так, чтобы он был полезен другим.

SDWebImageManager * manager = [SDWebImageManager sharedManager]; 

[manager downloadImageWithURL:[NSURL URLWithString:localIdentifier] options:SDWebImageHighPriority targetLocalAssetSize:CGSizeMake(150, 150) progress:nil completed:^(UIImage *image, NSError *error, SDImageCacheType cacheType, BOOL finished, NSURL *imageURL) { 

    if (image) { 

     imageview.image = image; 
    } 

}];