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

Другие вопросы по тегам