首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >细胞在UICollectionView中滚动2-3次后消失

细胞在UICollectionView中滚动2-3次后消失
EN

Stack Overflow用户
提问于 2017-01-11 13:43:23
回答 1查看 2.5K关注 0票数 1

在滚动我的UICollectionView时,我面临着一个奇怪的问题。它显示的是一个没有任何单元格的空白视图。

奇怪的是,它隐藏了我的手机,或者移除了我的手机,我不知道,但我找不到任何解决办法。

我尝试过这些解决方案:

1 :试图创建UICollectionViewFlowLayout的自定义类,并按照所有不同的方法进行操作,但无法解决我的问题。

2 :尝试了下面的方法来重新属性和重新计算我的单元格大小:

代码语言:javascript
复制
-(BOOL)shouldInvalidateLayoutForBoundsChange:(CGRect)newBounds
{
   return YES;
}

我遵循的链接:

Que1:UICollectionView's cell disappearing

Que2:UICollectionView items disappear when scrolling with my own UICollectionViewFlowLayout subclass

请指导我与自定义单元格简单的集合视图有什么问题。

参考图像:

在卷轴之前:

在卷轴之后:

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2017-01-13 05:23:31

我在这里回答我自己的问题。

因为我在这个问题上被困了两天。

当我使用CollectionViewController并将该Controller视图添加到我的当前使用控制器中时,它正在消失我的集合视图单元格。

原因:由于ARC发布了delegate & datasource连接和集合视图无法获得单元格,而我正在从上到下滚动。

解决方案:

我用两种方法解决这个问题。

1:由于连接丢失,在当前的VC中创建CollectionViewController,而不是在服务和JSON解析器类中。

下面的代码中最重要的部分是addChildViewController,它将不释放委托连接,并按预期工作。

代码语言:javascript
复制
UIStoryboard *mainStoryBoard = [UIStoryboard storyboardWithName:@"Main" bundle:[NSBundle mainBundle]];
CardListViewController *objCardListViewController = [mainStoryBoard instantiateViewControllerWithIdentifier:@"CardListViewController"];
objCardListViewController.view.frame = CGRectMake(0, 0,self.cardMainView.frame.size.width, self.cardMainView.frame.size.height);
[self.cardMainView addSubview:objCardListViewController.view];
[self addChildViewController:objCardListViewController];

但是根据我的要求,我在很多地方都需要这个集合视图,所以我需要概括这个集合视图。

因此,我选择了第二种方式,即ContainerView和add子控制器,并将这个CollectionViewController与容器视图连接起来,这样我就可以在需要这个列表的地方使用它了。

奇怪但却是真的。

希望这会对面临同样问题的人有所帮助。

谢谢和快乐编码。

票数 6
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/41592580

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档