UIImageView не показывает загруженные изображения после локализованного приложения iOS
Когда я локализовал приложение для iOS. UIImageView
изображения вообще не отображаются, эти изображения я скачал с URL. ПРИМЕЧАНИЕ: я использую компонент AsyncImageView.
@implementation CategoryView
+ (CategoryView *)getViewWithTitle:(NSString *)title andImageUrl:(NSString *)imgUrl {
CategoryView *view = [[[NSBundle getBundle] loadNibNamed:@"CategoryView" owner:self options:nil] objectAtIndex:0];
[view configureWithTitle:title andImageUrl:imgUrl];
return view;
}
- (void)configureWithTitle:(NSString *)title andImageUrl:(NSString *)imgUrl {
[self bringSubviewToFront:_viewBtn];
self.imageView.layer.cornerRadius = self.imageView.frame.size.width / 2;
self.imageView.clipsToBounds = YES;
self.categoryTitleLabel.text = title;
[self.imageView setImageURL:[NSURL URLWithString:imgUrl]];
}
2 ответа
Вы можете попробовать библиотеку SDWebImage, и она обеспечивает загрузчик асинхронных изображений с поддержкой кэширования.
Некоторые из функций, перечисленных в документации:
Категории для UIImageView, UIButton, MKAnnotationView, добавляющие веб-изображение и управление кешем
Асинхронный загрузчик изображений
Кэширование асинхронной памяти + образа диска с автоматической обработкой срока действия кэша
Декомпрессия фонового изображения
Гарантия того, что один и тот же URL не будет загружен несколько раз
Гарантия того, что поддельные URL не будут повторяться снова и снова
Гарантия того, что главный поток никогда не будет заблокирован
Спектакли!
Используйте GCD и ARC
Как я знаю, вы хотите получить доступ к изображениям, загруженным с URL, которые будут отображаться каждый раз после завершения загрузки. Это правильно?
Если это так, то я хотел бы сообщить вам, что AsyncImageView загружает изображения в кэш только асинхронно, но не будет сохранять изображения на диск в течение длительного времени, поэтому вы не сможете просматривать изображения в автономном режиме в imageView,
для этого вам нужно сохранить все загруженные изображения в кэш-память и извлечь из них изображения,
Вы можете использовать FastImageCache