我有一个简单的 UICollectionView,只有四个单元格,使用 Flow 布局。我只想将单元格#4 向上移动 100px 左右。我是否必须对 Flow 布局进行子类化,甚至制作自定义布局才能做到这一点?
实现这一目标的最简单方法是什么?谢谢!请提供一些示例代码,我对布局和集合视图不是很熟悉。
我有一个简单的 UICollectionView,只有四个单元格,使用 Flow 布局。我只想将单元格#4 向上移动 100px 左右。我是否必须对 Flow 布局进行子类化,甚至制作自定义布局才能做到这一点?
实现这一目标的最简单方法是什么?谢谢!请提供一些示例代码,我对布局和集合视图不是很熟悉。
实现这个委托方法:
-(void)collectionView:(UICollectionView *)collectionView didEndDisplayingCell:(UICollectionViewCell *)cell forItemAtIndexPath:(NSIndexPath *)indexPath
然后,您可以更改所需特定单元格的框架
您可以调整单元格 #4 的大小,例如:
#pragma mark – UICollectionViewDelegateFlowLayout
- (CGSize)collectionView:(UICollectionView *)collectionView layout(UICollectionViewLayout*)collectionViewLayout sizeForItemAtIndexPath:(NSIndexPath *)indexPath
{
if (indexPath.row == 4)
return CGSizeMake(100, 100);
return CGSizeMake(50, 50);
}
不要忘记在你的 .h 中实现“UICollectionViewDelegateFlowLayout”(你可以为 UICollectionView 添加其他的 Delegate 和 DataSource)
@interface MyViewController : UIViewController <UICollectionViewDelegate, UICollectionViewDataSource, UICollectionViewDelegateFlowLayout>
但是,如果您想子类化集合视图的布局,您可以按照在此处输入链接描述的示例
++