PF QueryCollection ViewController 中首次加载时未出现图像
Posted
技术标签:
【中文标题】PF QueryCollection ViewController 中首次加载时未出现图像【英文标题】:Images not appearing on first load in PFQueryCollectionViewController 【发布时间】:2016-01-04 03:37:03 【问题描述】:有没有人用 PFQueryCollectionViewController 用 Objective C 加载图像?
当用户第一次加载视图时,它会加载文本,但不会加载图像。用户第二次加载视图时,图像被加载。我不明白。
- (PFCollectionViewCell *)collectionView:(UICollectionView *)collectionView
cellForItemAtIndexPath:(NSIndexPath *)indexPath
object:(PFObject *)object
PFCollectionViewCell *cell = [super collectionView:collectionView cellForItemAtIndexPath:indexPath object:object];
cell.textLabel.textAlignment = NSTextAlignmentCenter;
cell.textLabel.text = object[@"name"];
cell.imageView.file = object[@"icon"];
// If the image is nil - set the placeholder
if (cell.imageView.image == nil)
cell.imageView.image = [UIImage imageNamed:@"Icon.png"];
[cell.imageView loadInBackground];
cell.contentView.layer.borderWidth = 1.0f;
cell.contentView.layer.borderColor = [UIColor clearColor].CGColor;
return cell;
【问题讨论】:
【参考方案1】:该行为与 imageView.image 最初为非 nil 一致。只需无条件地执行占位符分配。一旦图像被缓存,占位符将被真实图像的分配撤消(在绘制任何东西之前)......
cell.imageView.image = [UIImage imageNamed:@"Icon.png"];
cell.imageView.file = object[@"icon"];
[cell.imageView loadInBackground];
【讨论】:
谢谢,但我仍然得到相同的结果:/ 我找到了这个但我还没有学 swift ***.com/a/31270733/5742044 翻译过来就是你必须设置一个占位符图片。但是你的逻辑就是这样做的。您可以在设置后尝试记录图像吗?NSLog(@"%@", cell.imageView.image);
2016-01-04 12:33:00.748 TestApp[4414:169946] (null) 2016-01-04 12:33:00.750 TestApp[4414:169946] (null) 2016-01- 04 12:33:00.751 TestApp[4414:169946] (null) 2016-01-04 12:33:00.751 TestApp[4414:169946] (null) 2016-01-04 12:33:00.752 TestApp[4414:169946] (null) 2016-01-04 12:33:00.753 AeroTV[4414:169946] (null)
那是你设置后的吗?强有力的证据表明imageNamed:@"Icon.png"
不存在,对吧?以上是关于PF QueryCollection ViewController 中首次加载时未出现图像的主要内容,如果未能解决你的问题,请参考以下文章
粒子滤波PF—从贝叶斯滤波到粒子滤波PF——Part-I(贝叶斯滤波)