したがって、各セルのレイアウトが異なるため、3 つのセルを持つコレクション ビュー コントローラーがあります。私の画像はこれを示しています:
それらはすべて異なるセル識別子を持っているため、私の cellForItemAtIndexPath 関数では、次のような特定のセルを作成できます。
-(UICollectionViewCell *)collectionView:(UICollectionView *)collectionView cellForItemAtIndexPath:(NSIndexPath *)indexPath {
UICollectionViewCell *cell;
if(indexPath.row == 0)
{
static NSString *identifier = @"Cell1";
cell = [collectionView dequeueReusableCellWithReuseIdentifier:identifier forIndexPath:indexPath];
[cell setNeedsLayout];
}
else if(indexPath.row == 1)
{
static NSString *identifier = @"Cell2";
cell = [collectionView dequeueReusableCellWithReuseIdentifier:identifier forIndexPath:indexPath];
[cell setNeedsLayout];
}
else
{
static NSString *identifier = @"Cell3";
cell = [collectionView dequeueReusableCellWithReuseIdentifier:identifier forIndexPath:indexPath];
[cell setNeedsLayout];
}
return cell;
}
しかし、それをシミュレートすると、すべてのセルが同じサイズになります。
セルを強制的に定義したサイズにする方法はありますか、またはこれを行うためのより適切な方法はありますか?