2017-04-21 3 views
0

私はUICollectionViewを自分のアプリに持っています。私はそれが各水平行に2つのセルしか持たないように拘束したい。 iPhoneのクラスでは、3つのセルが同じ水平の行に収まらないように幅を設定することでこれを実現します。これは修正のようですが、iPadsのセルのサイズを変更する方法はわかりません。私は使用を聞いた:サイズクラススウィフトのセルのサイズを変更するには

func collectionView(collectionView: UICollectionView, layout collectionViewLayout: UICollectionViewLayout, sizeForItemAtIndexPath indexPath: NSIndexPath) -> CGSize 

私はこの機能にアクセスできません。 Swiftはもはやこの機能をもはやサポートしていませんか?

質問:各水平行に2つのセルのみを表示するように強制できますか?

+0

方法はまだ存在しません。しかし、あなたはそれをさまざまな方法で行うことができます。現在どのようにサイズを設定していますか?あなたはそのコードを含めることができますか? –

+0

そのメソッドのSwift 3の署名が間違っています。適切な署名については、ドキュメントを参照してください。 – rmaddy

答えて

0

あなたは、第1のプロトコルにUICollectionViewDelegateFlowLayout

に準拠して、メソッドを実装する必要があります

func collectionView(_ collectionView: UICollectionView, layout collectionViewLayout: UICollectionViewLayout, sizeForItemAt indexPath: IndexPath) -> CGSize { 
     return CGSize(width: collectionView.frame.size.width * 0.5, height: 30) 
    } 
+0

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

+0

クラス「UIViewController」と「UICollectionViewFlowLayout」「 – c3pNoah

+0

nevermindから複数の継承を取得しました。私は誤って "UICollectionViewDelegateFlowLayout"の代わりに "UICollectionViewFlowLayout"を追加しました – c3pNoah

関連する問題