我有一个CollectionViewCell放置在CollectionView中。 CollectionView的大小通过自动布局进行设置,并且可以随时更改。CollectionViewCell与CollectionView的自动布局大小
我想(以编程方式)在我的CollectionView上设置约束,以便CollectionViewCell的大小能够响应CollectionView的大小(比如说Cell的宽度等于CollectionView-100的宽度,高度应该相等)。
如何声明Cell和CollectionView之间的约束?
何时,何地以及如何设置这些约束?当CollectionView的大小发生变化时,是否必须在单元格上调用setNeedsLayout?
我搜索了这么长时间,我发现的总是根据其内容改变单元的大小 - 这不是我想要做的。我得到的唯一提示是我可能必须子类CollectionViewLayout - 但我不确定这一点。
任何帮助表示赞赏!
我必须把这个在我的CollectionView的大小发生变化后再次使用函数以便单元格适应? – chl
是的,您每次需要调用'reloadData'时,collectionView的大小会发生变化 –
如果我使用Core Animation来动画改变CollectionView的大小(animateWithDuration和layoutIfNeeded,如http://www.objc.io/issues/3-views /高级自动布局工具箱/#动画)我必须经常设置某种间隔和调用reloadData吗?因为可能没有办法知道CollectionView的最终尺寸,所以我不能在Cell上使用animiationWithDuration ... – chl