2016-05-25 7 views
0

コレクションビューで3番目のセルの幅を変更したい。現在、私はこのような要素の幅と高さを設定しています:コレクションビューのすべての3番目のセルの幅を変更する

func collectionView(collectionView: UICollectionView,layout collectionViewLayout: UICollectionViewLayout,sizeForItemAtIndexPath indexPath: NSIndexPath) -> CGSize { 
    let width = UIScreen.mainScreen().bounds.size.width 
    return CGSize(width: width/2, height: width/2) 
} 

は、どのように私はコレクションビュー内のすべての第三の要素を選択し、その要素全幅することができますか? CSSでは、それは要素になります:nth-​​child(3n)なので、それに似ています。

答えて

5

modulusオペレータをよく使うようです。 (または、実際には、%

let offset = 0 //modify to change where it starts 
return (indexPath.row % 3 + offset) == 0 ? fullSize : normalSize 
+0

モジュラス解答でちょうど答えていた。しかし、今後これを見る他の人を助けるために、彼はあなたのコードを更新したいかもしれないので、ここではCGSizeを返しています。 – NSGangster

+0

ありがとう@NSGangster私はちょうど約CGSize答えを求めていた。 –

+0

コードは、あなたが使いたいと思っているものに下書きされることを意図しています。私は、「標準」と全幅、更新されたプレースホルダのパラメータは分かりません。 – sschale

関連する問題