ではCollectionView、一部のセルに追加のサブビューまたはレイヤーが必要です。CollectionViewセルのサイズを変更するように指示することができるため、すべてのコンテンツを適切にサイズ変更する必要があります。
現在、セルは imageview を持つセルを含む nib から初期化されます。セル nib はUICollectionViewCell、初期化のみを行うカスタム サブクラスにリンクされています。サブビューの自動サイズ変更がチェックされています。
はCollectionView、 で導出されて返された値によってセルのサイズを変更するように指示されsizeForItemAtIndexPath:ます。ScrollDirectionFlowLayout をサブクラス化しましたが、 andのみを指定していますInsets。
そのすべてがうまく機能しています。問題: サブビュー/レイヤーをセルに追加して、セルのサイズも正しく変更するにはどうすればよいですか? オフでサブビューとレイヤーを追加してみましtranslatesAutoresizingMaskIntoConstraintsたが、これらは自動的にサイズがまったく変更されません。また、ペン先の代わりにコード フレーム/ビューを使用しようとしました。
私が今得た最高のものは、cell.contentView.layer私が追加したサブレイヤーcellForItemAtIndexPath:です。frame.sizeこれは、セルのfromを格納することによって「手動で」サイズ変更されますsizeForItemAtIndexPath:。これは、醜いだけでなく、セルごとにさまざまなサイズのサブレイヤーになってしまいます。
どんな助けでも大歓迎です!
