ios – 在uicollectionview中加载延迟

ios – 在uicollectionview中加载延迟,第1张

概述这里是我的collectionview的代码它显示记录,但加载真的请告诉我如何实现延迟加载在这我还有一个占位符pic在我的项目 - (UICollectionViewCell *)collectionView:(UICollectionView *)collectionView cellForItemAtIndexPath:(NSIndexPath *)indexPath { Collec 这里是我的collectionvIEw的代码它显示记录,但加载真的请告诉我如何实现延迟加载在这我还有一个占位符pic在我的项目

- (UICollectionVIEwCell *)collectionVIEw:(UICollectionVIEw *)collectionVIEw cellForItemAtIndexPath:(NSIndexPath *)indexPath {    CollectionVIEwCell* cell = [collectionVIEw dequeueReusableCellWithReuseIDentifIEr:@"MJCell" forIndexPath:indexPath];// Setup image name    Nsstring *url = [[RSSOutputData objectAtIndex:indexPath.row]xmllink];    UIImage *img = nil;    NSData *data = [[NSData alloc] initWithContentsOfURL:[NSURL URLWithString:url]];    img = [[UIImage alloc] initWithData:data];    cell.MJImageVIEw.image = img;    return cell;}

现在它工作但很慢.

解决方法 使用GCD进行延迟加载非常容易.

// Create a queue for the operations    dispatch_queue_t queue = dispatch_queue_create("photoList",NulL);    // Start getting the data in the background    dispatch_async(queue,^{        NSData* photoData = [NSData dataWithContentsOfURL:[NSURL URLWithString:object.photoURL]];        UIImage* image = [UIImage imageWithData:photoData];        // Once we get the data,update the UI on the main thread        dispatch_sync(dispatch_get_main_queue(),^{           cell.photoImageVIEw.image = image;        });    });
总结

以上是内存溢出为你收集整理的ios – 在uicollectionview中加载延迟全部内容,希望文章能够帮你解决ios – 在uicollectionview中加载延迟所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

欢迎分享,转载请注明来源:内存溢出

原文地址: http://www.outofmemory.cn/web/1030179.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-05-23
下一篇 2022-05-23

发表评论

登录后才能评论

评论列表(0条)

保存