2017-08-28 81 views
0

我有一個水平UICollectionView,我希望它有一行每列一個項目,所有的。這些項目大小不一。爲了做到這一點,我用這個UICollectionViewFlowLayout:水平收集視圖不工作

let layout = UICollectionViewFlowLayout() 
layout.sectionInset = UIEdgeInsets(top: 0, left: 50, bottom: 0, right: 50) 
layout.scrollDirection = .horizontal 
layout.minimumInteritemSpacing = CGFloat.greatestFiniteMagnitude 

然後我初始化我UICollectionView與佈局。

的商品尺寸是正確的,但有時它們會放在同一列,這是不好的。根據this answer,我的最後一行應該解決問題,但事實並非如此。最後一行簡單地使項目彼此非常遠。我還使用collectionView.height而不是CGFloat.greatestFiniteMagnitude進行了測試,但我得到了同樣的不好結果。

我怎樣才能解決這個問題,並且可能這是一個斯威夫特4錯誤? - 這是斯威夫特4

回答

0

這似乎解決這個問題。我不知道爲什麼這工作,但它確實:)

func collectionView(_ collectionView: UICollectionView, layout collectionViewLayout: UICollectionViewLayout, minimumLineSpacingForSectionAt section: Int) -> CGFloat { 
    return view.frame.height 
}