Xcode 6告诉我UIViewController没有名为reloadData()的成员

Mik*_*fer 3 ios swift

我有一个观点控制器是UICollectionViewController,UICollectionViewDataSourceUICollectionViewDelegate.

最近更新Xcode后,我现在收到以下错误:

'(UICollectionView,numberOfItemsInSection:Int) - > Int'没有名为'reloadData'的成员

在下面的代码(-didCompleteForecast:是一个回调方法):

func didCompleteForecast() {
    //stuff
    println("got the data back")

    dispatch_async(dispatch_get_main_queue()) {
        self.collectionView.reloadData()
    }
Run Code Online (Sandbox Code Playgroud)

根据Apple自己的文档,-reloadData:应该可用.

我错过了什么?

谢谢

Adi*_*dha 6

这是因为self.colectionView是可选类型(UICollectionView?)所以你必须打开它:

self.collectionView!.reloadData()
Run Code Online (Sandbox Code Playgroud)

  • 或者更安全的`self.collectionView?.reloadData()`? (2认同)