UICollectionView 标题宽度
Posted
技术标签:
【中文标题】UICollectionView 标题宽度【英文标题】:UICollectionView header width 【发布时间】:2014-04-24 18:31:24 【问题描述】:在我的 UICollectionViewFlowLayout 子类中,我有这个:
self.headerReferenceSize = CGSizeMake(280, 44);
但是,标题以 320 的宽度显示,这是集合视图的宽度。根据文档,这是正确的:
在布局期间,只有与适当的大小相对应的大小 使用滚动方向。例如,对于垂直滚动 方向,布局对象使用您返回的高度值 方法。 (在这种情况下,标题的宽度将设置为 集合视图的宽度。)
但是,我需要宽度为 280,而不是拉伸到集合视图的整个宽度。我怎样才能覆盖它?
【问题讨论】:
将子视图放入标题中,并将其宽度定义为 280 像素。并且标题背景定义为透明。 【参考方案1】:您可以在标题上添加另一个自定义视图并根据需要调整其大小。当然,您在标题上的所有组件都将通过您创建的自定义视图...
【讨论】:
【参考方案2】:您不需要在标题中添加子视图。
您希望在 320 的集合视图中的标题宽度为 280,因此在左侧和右侧应用 20 的 Content Inset,如下所示:
斯威夫特
YourCollectionView.ContentInset = UIEdgeInsets(top: 0, left: 20, bottom: 20, right: 0)
Xamarin
YourCollectionView.ContentInset = new UIEdgeInsets(0, 20, 0, 20);
【讨论】:
以上是关于UICollectionView 标题宽度的主要内容,如果未能解决你的问题,请参考以下文章