UICollectionViewでAutoLayoutの設定崩れる際の対応方法

Xcode11でアプリを作成していたときに以下の画像のようにUICollectionViewのレイアウトが崩れてしまうという事態が発生しました.


UIImageViewの設定としてはAspect Fitに設定しており,サイズはセルのサイズに合わせて自動的に大きさを変えるようにしていました.
そのため,ImageViewの大きさそのものがこんなに大きくなるのはおかしいのですが私の環境ではなぜかこのような症状が起きてしまいました.
今回のその解決法を見つけてきましたのでみなさんに共有したいと思います.

結論

解決法としてはCollectionViewのサイズ設定のところでEstinamte SizeというものをNoneにすればよいようです.



備忘録

XcodeのいつのバージョンからかはわかりませんがCollectionViewのサイズを自動で計算するようになったらしいです.
この機能とUIImageViewが合わさることで悪さをしていたようですね.
なんか私の推察的には勝手に元画像の解像度でUIImageViewを読み込んでしまいそれにつられてCellが大きくなってしまっていたのかなと思います.
久しぶりにアプリ開発に復帰するとこんな感じで詰まるのがめんどくさいですよね.これで3時間ぐらい潰しちゃいました...


参考サイト

https://forums.developer.apple.com/thread/123625

0 件のコメント :

コメントを投稿