加载图像的快速方法

时间:2015-12-08 23:36:19

标签: ios objective-c url uiimageview uiimage

现在我正在加载图片查看文件网址并且需要很长时间。我甚至把它放在主线程上作为高优先级,但它仍然很慢。这实际上是在6个图像的循环中。我的问题是:

是否有更快的方式将图像加载到视图中?就像文件网址的替代品一样?

    //check the filetype
    if ([fileType  isEqual: @"image"])
    {
        dispatch_async(dispatch_get_global_queue(DISPATCH_QUEUE_PRIORITY_HIGH, 0), ^{
        //get image
        NSURL *imageFileUrl = [[NSURL alloc] initWithString:file.url];
        NSData *imageData = [NSData dataWithContentsOfURL:imageFileUrl];
            dispatch_async(dispatch_get_main_queue(), ^{
        imageView.image = [UIImage imageWithData:imageData];
            });
        });

    }

我的图像质量与此预设相同,尺寸是iphone屏幕的大小,无论是5,6或6 +

self.camera = [[LLSimpleCamera alloc] initWithQuality:AVCaptureSessionPreset1280x720
                                             position:CameraPositionBack
                                         videoEnabled:YES];

感谢,

2 个答案:

答案 0 :(得分:0)

虽然没有任何加载图像的快捷方式,但您可以采取一些措施来提供帮助。

  1. 最初只加载可见的图像,然后加载任何可能很快显示的图像。

  2. 如果图像的大小比视图大,则创建一个较小的图像,可能是一对不同的屏幕分辨率设备。

  3. 创建低分辨率图像版本,首先加载它们以获取用户的内容,然后加载全分辨率图像替换低分辨率版本..

  4. 请添加图像的大小以及UIImageView的大小和屏幕分辨率。

答案 1 :(得分:0)

我可以向你推荐什么,

  • 以较低分辨率/尺寸保存每张图像的副本 服务器
  • 首次加载时加载重复的图像。
  • 当用户特别观看图像时,请加载原始图像。