Note it turned out it was a simple mistake the cells would not \"sit on the bottom\". However, it\'s an interesting question: \"how to move the cells up and
Here's one "brute force" way to solve the problem -- write your own FlowLayout!!
It works ...
class SimpleFlowLayout: UICollectionViewFlowLayout {
override init() {
super.init()
initialize()
}
required init?(coder aDecoder: NSCoder) {
super.init(coder: aDecoder)
initialize()
}
func initialize() {
self.scrollDirection = .horizontal
self.minimumInteritemSpacing = 0.0
self.minimumLineSpacing = 0.0
}
override var collectionViewContentSize: CGSize {
return super.collectionViewContentSize
}
override func layoutAttributesForElements(in rect: CGRect) -> [UICollectionViewLayoutAttributes]? {
let allItems = super.layoutAttributesForElements(in: rect)
for attribute in allItems! {
print ("attribute.frame.origin.y ..... \(attribute.frame.origin.y)")
attribute.frame = CGRect(x: attribute.frame.origin.x,
y: attribute.frame.origin.y + 34,
width: attribute.frame.size.width,
height: attribute.frame.size.height)
// "go figure" ... add 34
}
return allItems;
}
The way you "set" a UICollectionViewFlowLayout is basically like this...
class YourFancyDisplay: UICollectionViewController {
override func viewDidLoad() {
super.viewDidLoad()
collectionView!.contentInset = UIEdgeInsetsMake(0, 0, 0, 0)
collectionView!.collectionViewLayout = SimpleFlowLayout()
...