SDWebImage - как загрузить изображение из кеша?

Я использую SDWebImage для загрузки изображений в свой UITableView, используя:

[cell.imageView setImageWithURL:[NSURL URLWithString:tempPhotoURL] placeholderImage:[UIImage imageNamed:@"temp.jpg"]];

Это работает отлично - нет проблем. Но когда я нажимаю на любую заданную строку в своем TableView, я хочу загрузить миниатюру этой строки в UIImageView, который находится на приближающемся экране подробностей, к которому я перехожу. Ну как мне это сделать? Должен ли я теперь получить изображение из кеша, так как оно уже загружено? Если да, то какой метод/процесс для этого? И если это не выход, то что? Я не могу понять это из всех этих файлов и методов, включенных в библиотеку SDWebImage...


person sirab333    schedule 19.07.2012    source источник


Ответы (4)


Просто используйте почти точно такой же код для установки изображения - SDWebImage проверит, кэшировано ли оно уже, и если да, то будет использовать его вместо извлечения изображения из URL-адреса.

person lukaszb    schedule 07.10.2012

Попробуй это,

   [self.imgView sd_setImageWithURL:[NSURL URLWithString:imageUrl placeholderImage:placeholderUrl options:0 progress:^(NSInteger receivedSize, NSInteger expectedSize) {

//Progress block

} completed:^(UIImage *image, NSError *error, SDImageCacheType cacheType, NSURL *imageURL){
             //Completion block
         }];
person Community    schedule 12.12.2015

Есть много способов добиться чего-то при кодировании. Один из них, который приходит на ум, заключается в том, чтобы убедиться, что UIImageView является доступным свойством вашего контроллера подробного представления (часть API контроллера подробного представления). Затем все, что вам нужно сделать, это перед тем, как вы нажмете контроллер подробного представления, назначить представление изображения ячейки свойству UIImageView подробного представления.

OR

создайте удобный инициализатор и передайте ему изображение ячейки... и т.д. и т.д.

person Keith SPE    schedule 08.08.2012

Вызовите тот же метод, который вы загрузили в свой TableView в DetailView, когда вы установите изображение, он сначала проверит кеш. Вот фрагмент кода для загрузки изображения с SDWebImage

[yourImageView sd_setImageWithURL:[NSURL URLWithString:yourImageUrl]
                          placeholderImage:[UIImage imageNamed:@"placeholder.jpg"]];
person Robin Mukanganise    schedule 11.08.2014