1

UICollectionViewCellに画像を追加し、次の画像のような制約を追加しました。コレクションビューの画像ビューにセルが追加された制約を適用しない

Cell With Constraints

制約:ImageViewのの

  • 幅=セルの幅
  • 細胞のImageViewの=身長
  • 合わせImageViewの垂直容器内(セル)
  • ImageViewをコンテナ内で水平に整列する(セル)

実行時にUICollectionViewDelegateメソッドを使用してセルサイズを決定しています。

func collectionView(collectionView: UICollectionView, layout collectionViewLayout: UICollectionViewLayout, sizeForItemAtIndexPath indexPath: NSIndexPath) -> CGSize 
{ 
    // calculating cell size and returning it 
} 

問題:私は両方が異なる値を持つセルサイズと画像表示サイズをチェックcellForItemAtIndexPath方法において

。 セル{w:82.0、h:145.77}、ImageView {w:380.0、h:170}。イメージは私がストーリーボードに設定したフレームサイズと同じです。制約に基づいて調整されていません。 私のセルのサイズが同じであることを保証できますか?

現在の修正:(?)

cell.imageView.frame = cell.bounds 

しかし、それはどんな意味がありません。なぜ私はサイズを明示的に設定する必要があるのですか、制約が適用されないのはなぜですか?

答えて

0

チェックマリウスSoutierすることで、この答えは:UICollectionView: different size items is not calculated on reused items

彼の答え以下のコメントは、おそらくあなたが探しているソリューションです。

CGSizesizeForItemAtIndexPath:に返す前に、基本的にreloadDataに電話する必要があります。

+0

このリンクは役に立ちません。私の質問で言ったように、私は正しいセルサイズを取得していますが、問題はUIImageView(追加された自動レイアウトの制約は適用されません)で発生しています。 –

関連する問題