gpt4 book ai didi

ios - UICollectionViewCell 相对于 CollectionView 的自动布局大小

转载 作者:可可西里 更新时间:2023-11-01 00:52:56 25 4
gpt4 key购买 nike

我在 CollectionView 中放置了一个 CollectionViewCell。 CollectionView 的大小是通过自动布局设置的,并且有时会发生变化。

我想(以编程方式)在我的 CollectionView 上设置约束,以便 CollectionViewCell 的大小响应 CollectionView 的大小(假设 Cell 的宽度等于 CollectionView-100 的宽度和高度应该相等)。

如何在 Cell 和 CollectionView 之间声明约束?

何时、何地以及如何设置这些约束?当 CollectionView 的大小发生变化时,是否必须在 Cell 上调用 setNeedsLayout?

我搜索了很长时间,但我发现的总是关于根据内容更改单元格的大小——这不是我想要做的。我得到的唯一提示是我可能必须将 CollectionViewLayout 子类化——但我对此不确定。

感谢任何帮助!

最佳答案

您无法使用约束来实现此目的,但您可以使用 UICollectionViewDelegatesizeForItemAtIndexPath 方法轻松实现此目的。示例:

func collectionView(collectionView: UICollectionView, 
layout collectionViewLayout: UICollectionViewLayout,
sizeForItemAtIndexPath indexPath: NSIndexPath) -> CGSize {
return CGSize(width: collectionView.frame.size.width / 2, height: collectionView.frame.size.height/ 2)
}

在更改 collectionView 大小之后,您需要做的就是调用它的 reloadData 方法。

关于ios - UICollectionViewCell 相对于 CollectionView 的自动布局大小,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30922240/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com