SwiftUIでCollectionViewを実現するライブラリ

SwiftUIには標準でCollectionViewの提供がなく、GridやHorizontalにコンテンツを配置し、スクロールを可能にすることは多少の無理が必要だったのだが、ASCollectionViewというライブラリではこれまでのUICollectionViewと同様の振る舞いをSwiftUIに持ち込むことに成功している様子。

コードはほとんど読めていないが、UIKit.UICollectionViewのブリッジによる実現方法だと思われる。

ブリッジと聞くと残念な印象を持つかもししれないが、宣言的UIアプローチにおいてはコンポーネントを組み立てることにフォーカスされているもので、Pure-SwiftUIでなんでも作ることが出来るわけではなく、基本的には動くものをどうやって動いているかをラップして宣言的に見せていくものだと思う。

Reactでも同様のアプローチは数多く行われていると思う。

image
image