1、创建一个UIView实例,作为容器视图,用于承载子视图。
UIView *containerView = [[UIView alloc] initWithFrame:CGRectMake(0, 0, collectionViewWidth, collectionViewHeight)];
2、计算每个单元格的宽度。
CGFloat minimumInteritemSpacing = 10.0; // 设置单元格之间的最小水平间距
CGFloat collectionViewWidth = containerView.frame.size.width;
CGFloat cellWidth = (collectionViewWidth - minimumInteritemSpacing * (numberOfItems - 1)) / numberOfItems;
3、使用循环创建每个单元格的UIView,并设置其frame。
for (NSInteger i = 0; i < numberOfItems; i++) {
UIView *cellView = [[UIView alloc] initWithFrame:CGRectMake((cellWidth + minimumInteritemSpacing) * i, 0, cellWidth, collectionViewHeight)];
cellView.backgroundColor = [UIColor yourCellColor]; // 设置单元格的背景颜色
// 添加其他内容到cellView中,例如UILabel、UIImageView等
[containerView addSubview:cellView];
}
在上述代码中,我们使用循环创建了每个单元格的UIView,并通过计算位置和设置宽度来实现左右间隔相等的效果。你可以根据自己的需求定制每个单元格的样式和内容,并将它们添加到容器视图containerView中。
最后,将containerView添加到你的视图层级中,以显示UICollectionView的效果。
[self.view addSubview:containerView];
请注意,这种方法是使用UIView来模拟UICollectionView的效果,并手动创建和管理每个单元格的布局。相比起使用UICollectionView,这种方法可能更加繁琐,因为你需要自己处理单元格的重用、滚动等功能。如果你需要更多的集合视图功能和更好的性能,建议使用UICollectionView。