Edited at

UICollectionView#collectionViewLayoutをセットするとクラッシュ

More than 1 year has passed since last update.

まれにうまくいくこともあるが、クラッシュする。

EXC_ARITHMETIC (code=EXC_I386_DIV, subcode=0x0)

UICollectionView#dataSourceを、先に設定しておくと駄目っぽい。collectionViewLayoutを設定した後に、dataSourceを設定するとクラッシュしなくなった。

let layout = MyCollectionViewLayout()

collectionView.collectionViewLayout = layout
collectionView.dataSource = self

layoutを設定し直すとやはりクラッシュするので、設定前にdataSourceをnilにしておくと防げます。

collectionView.dataSource = nil

let layout = MyCollectionViewLayout()
collectionView.collectionViewLayout = layout
collectionView.dataSource = self