2017-05-03 5 views
0

私は自分のアプリケーションでコレクションビューを持っています。私はUICollectionViewDelagateFlowLayoutプロトコルを使用しています。セルは、私がそれらを必要とするようにサイジングしています。これは、1行につき2セルを表示しています。しかし私が風景に入ると、1行に3つのセルが表示されます。CollectionViewセルサイズの問題

質問:どうすれば行ごとに2つのセルを表示させることができますか?

+0

があなたのレイアウト方法を表示するあなたのクラスでは、この2 collectionView」デリゲートメソッドを追加します。 – creeperspeak

答えて

0

func collectionView(_ collectionView: UICollectionView, layout collectionViewLayout: UICollectionViewLayout, sizeForItemAt indexPath: IndexPath) -> CGSize { 
     return CGSize(width: collectionView.frame.size.width/ 2 - 10, height: 100) // chnage as per your need ...10 is the space between cell 
    } 

override func didRotateFromInterfaceOrientation(fromInterfaceOrientation: UIInterfaceOrientation) { 
    myCollectionView!.reloadData() 
} 
+0

ありがとうございました – c3pNoah

+0

ようこそ........ – KKRocks

+0

はい。私はこの答えを受け入れる方法を知らない。私は最初の2つの細胞の背景をどのように変えることができるかも知っていますか? – c3pNoah

1

風景に入ると、コレクションビューのサイズが変更されていると推測しているので、1行につき3つのセルのための十分なスペースがあります。オリエンテーション変更に関するコレクションビューのサイズ変更を無効にしないのはなぜですか?

それ以外の場合は、おそらく独自のUICollectionViewLayoutを記述する必要があります。

+0

それは素晴らしい音。すみません、私は新生児のようですので、サイズ変更を無効にする方法を教えてください。 – c3pNoah

+0

どのようにUIを設定していますか?それはストーリーボードを通してですか? – Spads

+0

私は自分のUICollectionViewを作成し、それをストーリーボードに拘束します – c3pNoah