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

Ios Xcode 6告诉我UIViewController没有';没有名为reloadData()的成员,ios,swift,Ios,Swift,我有一个视图控制器,它是UICollectionViewController、UICollectionViewDataSource和UICollectionViewDelegate 在最近更新Xcode之后,我现在发现以下错误: “(UICollectionView,numberOfItemsInSection:Int)->Int”没有名为“reloadData”的成员 在以下代码上(-didCompleteForecast:是回调方法): 根据苹果自己的文档,-reloadData:应该是可用

我有一个视图控制器,它是
UICollectionViewController
UICollectionViewDataSource
UICollectionViewDelegate

在最近更新Xcode之后,我现在发现以下错误:

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

在以下代码上(
-didCompleteForecast:
是回调方法):

根据苹果自己的文档,
-reloadData:
应该是可用的

我错过了什么


谢谢

这是因为self.collectionview是可选类型(UICollectionView?),所以您必须将其展开:

self.collectionView!.reloadData()

如果您处理的是标准的
UIViewController
,您在其中添加了一个集合视图,但忽略了定义一个名为
collectionView
的出口/属性,则可能会出现这种错误

在这种情况下,
didCompleteForecast
中的
collectionView
引用将与您在类中实现的第一个
UICollectionViewDelegate
方法相匹配(根据错误消息,可能是
numberofitemsinssection
方法)



正如Aditya正确指出的那样,如果不打开可选的
collectionView
UIViewController
也会出现此错误。此错误与
UIViewController
没有名为
reloadData()的成员无关
它说
UICollectionView
没有成员。您的标题非常误导,或者更安全地
self.collectionView?.reloadData()
self.collectionView!.reloadData()