我有一個UICollectionViewController
和要添加自定義標題。斯威夫特:UICollectionViewController的頭重疊細胞
我在我的CollectionViewController中的Interface Builder中檢查了Section Header
,並在我的子類viewForSupplementaryElementOfKind
函數中實現。
override func collectionView(_ collectionView: UICollectionView, viewForSupplementaryElementOfKind kind: String, at indexPath: IndexPath) -> UICollectionReusableView {
switch kind {
case UICollectionElementKindSectionHeader:
let headerView = collectionView.dequeueReusableSupplementaryView(ofKind: kind, withReuseIdentifier: "myHeaderIdentifier", for: indexPath)
// !! NOT WORKING PROPERLY
// sectionHeader overlaps other cells
headerView.backgroundColor = UIColor(hue: 0.9, saturation: 1.0, brightness: 0.9, alpha: 1.0)
headerView.frame = CGRect(x: 0, y: 0, width: UIScreen.main.bounds.width, height: 250.0)
return headerView
default:
assert(false, "Unexpected element kind")
}
}
更改生效,但標題(下面屏幕截圖中的粉色區域)現在與collectionView中的常規單元格重疊。
我在做什麼錯? 感謝任何幫助!
謝謝你,Magoo!使用FlowLayout讓我走向正確的方向,'headerReferenceSize'完全符合我想要達到的目標。 '讓flowLayout = self.collectionView?.collectionViewLayout as? UICollectionViewFlowLayout' – ixany
完美,很高興你有它排序 – Magoo