无法覆盖类型为'UICollectionView'的可变属性'collectionView'?具有协变类型'GeminiCollectionView?'

问题描述

我有一个自定义集合视图,并且一切正常。我想包含“ gemini”以在水平滑动单元格时制作精美的动画。我相信问题不在于gemini,我认为将VC类更改为其他类也会发生同样的事情,但是我不知道如何解决这个问题,因为我以前从未遇到过,这是否有捷径可言? />
我已经安装了Pod,并将其导入了代码中。
我有一个UICollectionViewController,但是要使用gemini,需要将collectionView从Storyboard连接到ViewController。在此之前,我在Storyboard中放置了一个类,让我的CollectionView成为geminiCollectionView,如下图所示:

Storyboard coll.view class

在那之后,我也为ViewController中的CollectionView更改了一个类,如下图所示,并得到了这三个错误

enter image description here

在后面的代码中,它没有显示任何错误
viewDidLoad

collectionView.gemini
            .rollRotationAnimation()
            .degree(45)
            .rollEffect(.rollUp)


cellForItemAt

self.collectionView.animateCell(cell)


scrollViewDidScroll

self.collectionView.animateVisibleCells()


willdisplay cell

if let cell = cell as? ratingCell {
//ratingCell inhertis the geminiCell class
            self.collectionView.animateCell(cell)
        }

因此,除了我在开头和此处提到的声明外,所有代码都可以:

@IBOutlet var collectionView: geminiCollectionView!



等待随机家伙对此投票:P

解决方法

已解决

@IBOutlet var collectionView: GeminiCollectionView!

那条线是个问题。似乎您不必默认Swift的名称来覆盖可变属性,对于集合视图,该属性为collectionView,对于表视图,其名称为tableView
我将该行更改为

@IBOutlet var collView: GeminiCollectionView!

...错误消失了。