1. ホーム
  2. ios

[解決済み] UICollectionViewのセルを中央揃えする方法は?

2022-11-16 13:19:59

質問

現在、私は UICollectionView を使っていて、うまく動作しています。しかし、水平方向のスクロールを可能にしたいのです。グリッドは1ページあたり8アイテムをサポートしており、アイテムの合計数が例えば4である場合、水平スクロール方向を有効にすると、アイテムはこのように配置されるはずです。

0 0 x x
0 0 x x

ここで0 -> コレクションアイテム と x -> 空のセル

のように中央揃えにする方法はありますか?

x 0 0 x
x 0 0 x

コンテンツがよりきれいに見えるように?

また、以下のような配置も、私が期待している解決策かもしれません。

0 0 0 0
x x x x

どのように解決するのですか?

以下のような実装をすれば、一本線の外観を実現できると思います。

- (UIEdgeInsets)collectionView:(UICollectionView *)collectionView layout:(UICollectionViewLayout*)collectionViewLayout insetForSectionAtIndex:(NSInteger)section {
    return UIEdgeInsetsMake(0, 100, 0, 0);
}

コンテンツを強制的に一行にする方法を見つけるには、この数値で遊んでみる必要があります。最初の0は上端の引数で、コンテンツを画面の垂直方向の中央に配置したい場合は、この引数も調整することができます。