如何创build具有2个或更多自定义单元格的自定义UICollectionView?
在我的项目中我想使用UICollectionView
与自定义单元格,我创build与自定义单元格的集合视图,但我想在我的项目中使用不同大小的自定义单元格我遵循一些教程,但我没有得到它正确的,下面我附上示例我真正在寻找collections视图的屏幕截图。
其中一种可能的创build方法是使用sizeForItemAtIndexPath
,然后返回Cell
的大小。 这里有一些有用的链接在Github上正在做你想要的:
- RF被子布局
- 马赛克布局
和第一张图片一样,一些单元格有button,而另一些则没有。 为此,您将不得不创build自定义单元格,即一个带有button的自定义单元格,另一个不带button。 而在你的cellForItemAtIndexPath
函数中,你可以用一些if-else
条件来定义它们。
- (UICollectionViewCell *)collectionView:(UICollectionView *)collectionView cellForItemAtIndexPath:(NSIndexPath *)indexPath { if(firstCellConditionMet) { CustomCell1 *cell = [collectionView dequeueReusableCellWithReuseIdentifier:@"CellIdentifier" forIndexPath:indexPath]; //Your code return cell; } else{ CustomCell2 *cell2 = [collectionView dequeueReusableCellWithReuseIdentifier:@"CellIdentifier2" forIndexPath:indexPath]; //Your Code return cell2; } } }
这可以通过集合视图stream布局来实现。 您可以创build一个stream布局,该布局将处理不同的行以及连续有多less个元素。 在这里看一下Ray Wenderlich的教程。
如果这是你想要的
https://www.youtube.com/watch?v=LFBTbmvFR30
尝试使用自定义布局收集视图
https://github.com/bryceredd/RFQuiltLayout
这是准备好的决定,它很容易使用,如果有问题,将回答你,现在我做非常相似的集合…但在随机单元格大小的iPad >>>>
和最酷的,有了这个实现,你将能够使用一个类的所有单元格大小,如果你使用约束。 如果你有这个实现的问题,我可以给你我的testing项目。 祝你好运,兄弟。
我觉得这很容易。 你可以UICollectionViewFlowLayout
。