框架地址:https://github.com/chiahsien/CHTCollectionViewWaterfallLayout

实现思路:

1、创建布局对象;

2、设置布局属性;

3、根据创建的布局,创建UICollectionView;

4、遵守协议  CHTCollectionViewDelegateWaterfallLayout,实现方法

1 #pragma mark - CHTCollectionViewDelegateWaterfallLayout
2 - (CGSize)collectionView:(UICollectionView *)collectionView layout:(UICollectionViewLayout *)collectionViewLayout sizeForItemAtIndexPath:(NSIndexPath *)indexPath {
3   return [self.cellSizes[indexPath.item % 4] CGSizeValue];
4 }

 

// 需要注意的是,要想实现瀑布流效果必须保证各个图片宽高比例不同,大小无所谓,它会自己根据你设置的列数等属性进行缩放
- (NSArray *)cellSizes {
  if (!_cellSizes) {
    _cellSizes = @[
      [NSValue valueWithCGSize:CGSizeMake(400, 550)],
      [NSValue valueWithCGSize:CGSizeMake(1000, 665)],
      [NSValue valueWithCGSize:CGSizeMake(1024, 689)],
      [NSValue valueWithCGSize:CGSizeMake(640, 427)]
    ];
  }
  return _cellSizes;
}

 

相关文章:

  • 2021-12-24
  • 2021-06-22
  • 2021-06-11
  • 2021-07-04
  • 2021-08-21
  • 2022-12-23
  • 2022-12-23
  • 2022-12-23
猜你喜欢
  • 2022-12-23
  • 2021-09-30
  • 2022-12-23
  • 2021-05-23
  • 2022-01-14
  • 2021-11-01
  • 2021-07-25
相关资源
相似解决方案