[英]Placing the cells in a collection view in the centre rather than the outsides in swift
[英]Placing cells in a collection view side by side in swift
默認情況下,集合視圖中的單元格將在它們之間添加空間,以便到達集合視圖的邊界之間。 在我為iPad制作的應用程序中,我需要能夠強制並排放置單元(間距= 0)。 流布局或集合視圖單元中沒有包含任何方法,那么有沒有辦法做到這一點?
您正在尋找的是flowLayout的以下屬性: minimumInterimSpacing
和minimumLineSpacing
如果將它們設置為0,則collectionView中的項目之間將完全沒有間距。
在代碼中,您通常會這樣做(沒有情節提要):
override func loadView() {
super.loadView()
//
// layout
//
let layout = UICollectionViewFlowLayout()
layout.minimumInteritemSpacing = 0
layout.minimumLineSpacing = 10
//
// collectionView
//
self.collectionView = UICollectionView(frame: CGRectZero, collectionViewLayout: layout)
self.view.addSubview(collectionView)
}
如果要動態設置這些屬性,請實現UICollectionViewFlowLayout的相應方法(也應與Storyboards一起使用)。
class MyViewController: UIViewController,
UICollectionViewDelegate,
UICollectionViewDataSource,
UICollectionViewDelegateFlowLayout {
func collectionView(collectionView: UICollectionView, layout collectionViewLayout: UICollectionViewLayout, minimumInteritemSpacingForSectionAtIndex section: Int) -> CGFloat {
return 0
}
func collectionView(collectionView: UICollectionView, layout collectionViewLayout: UICollectionViewLayout, minimumLineSpacingForSectionAtIndex section: Int) -> CGFloat {
return 0
}
// the rest of your code
}
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.