Swift:UICollectionViewController不显示任何单元格

Dom*_*yan 1 ios uicollectionview uicollectionviewcell swift

没有关于这个主题的其他问题对我有用,所以这里就是这个.

尽管如此,我还没有出现细胞,我是以编程方式呈现UICollectionViewController来自UIViewController故事板中的细胞

注意:@IBActionsegue只是一个按钮动作

这是UIViewController:

@IBAction func segue(sender: AnyObject) {
    let collectionview = CollectionViewController(collectionViewLayout: UICollectionViewLayout())
    self.presentViewController(collectionview, animated: true, completion: nil)
}
Run Code Online (Sandbox Code Playgroud)

那就是UICollectionViewController:

import UIKit

private let reuseIdentifier = "Cell"

class CollectionViewController: UICollectionViewController, UICollectionViewDelegateFlowLayout {

  override func viewDidLoad() {
      super.viewDidLoad()
      collectionView?.backgroundColor = UIColor.brownColor()
      self.collectionView!.registerClass(UICollectionViewCell.self, forCellWithReuseIdentifier: reuseIdentifier)
  }


  // MARK: UICollectionViewDataSource

  override func numberOfSectionsInCollectionView(collectionView: UICollectionView) -> Int {
      return 1
  }


  override func collectionView(collectionView: UICollectionView, numberOfItemsInSection section: Int) -> Int {
      return 10
  }

  override func collectionView(collectionView: UICollectionView, cellForItemAtIndexPath indexPath: NSIndexPath) -> UICollectionViewCell {
      let cell = collectionView.dequeueReusableCellWithReuseIdentifier(reuseIdentifier, forIndexPath: indexPath)
      cell.backgroundColor = UIColor.blueColor()
      return cell
  }

}
Run Code Online (Sandbox Code Playgroud)

我一定错过了一些明显的东西.在此先感谢为我指出的人.

Dom*_*yan 8

我想出了问题,真的有点傻.在呈现新的时UICollectionViewController我初始化错了.我UICollectionViewLayout需要使用时使用UICollectionViewFlowLayout

@IBAction func segue(sender: AnyObject) {
    let collectionview = CollectionViewController(collectionViewLayout: UICollectionViewFlowLayout())
    self.presentViewController(collectionview, animated: true, completion: nil)
}
Run Code Online (Sandbox Code Playgroud)