UICollectionViewDiffableDataSource
を使ってみたところ、アイテムを表示する際の挙動が予想と違ったので軽くメモ👀
何が違ったのか?
複数のセクションで、値が同じアイテムを使うと、一方のセクションではそのアイテムが表示されなくなる。
例えば、セクションAとセクションBで、下記の.itemA
をアイテムコレクションに含んでいた場合は、インデックスの早いセクションでは、.itemA
が表示されなくなります。
enum ItemType: Hashable { case itemA case itemB }
回避策
enumにAssociatedValueを追加して、それぞれのセクション毎にアイテムを取得するようにすることで、重複を防ぎアイテムを表示させることができます🐟
enum ItemType: Hashable { case itemA(section: Int) case itemB(section: Int) }
てな感じで本日も以上となります🍺