- (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中加载延迟所遇到的程序开发问题。
如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)