从 URL 加载图像并将其显示在 iPhone 应用程序中的更快方法

2023-12-30

我使用以下代码在 ImageView 中显示图像:

   imgbackBG.image = [UIImage imageWithData:
                   [NSData dataWithContentsOfURL:
                    [NSURL URLWithString:[NSString stringWithFormat:@"http://%@",    [test.arrImagessplash objectAtIndex:[test.arrImages count]-4]]]]];

    4cing.com/mobile_app/uploads/pageicon/splash.png

问题是代码执行速度非常慢。有没有办法更快地加载图像并将其显示在 ImageView 中?如果是这样,我该怎么做?


您正在使用的代码在主线程上加载图像。这将阻止 UI。使用 GCD 异步加载图像。

这是示例代码:

dispatch_queue_t q = dispatch_get_global_queue(DISPATCH_QUEUE_PRIORITY_HIGH, 0ul);
        dispatch_async(q, ^{
            /* Fetch the image from the server... */
            NSData *data = [NSData dataWithContentsOfURL:url];
            UIImage *img = [[UIImage alloc] initWithData:data];
            dispatch_async(dispatch_get_main_queue(), ^{
                /* This is the main thread again, where we set the tableView's image to
                 be what we just fetched. */
                cell.imgview.image = img;
            });
        });
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

从 URL 加载图像并将其显示在 iPhone 应用程序中的更快方法 的相关文章

随机推荐