【发布时间】:2016-05-26 19:37:51
【问题描述】:
我里面有 VC 和一个 collectionView。所有管理集合视图的代码我都放在了那个 VC 的扩展中。但现在我需要在另一个不同的 VC 中使用这个集合视图,我不想复制/粘贴这个扩展。我尝试将 UICollectionView 子类化,但它不会在内部调用委托/数据源方法。这是我的扩展程序的签名:
func scrollViewDidEndDecelerating(scrollView: UIScrollView)
func numberOfSectionsInCollectionView(collectionView: UICollectionView) -> Int
func collectionView(collectionView: UICollectionView, cellForItemAtIndexPath indexPath: NSIndexPath) -> UICollectionViewCell
func collectionView(collectionView: UICollectionView, layout collectionViewLayout: UICollectionViewLayout, sizeForItemAtIndexPath indexPath: NSIndexPath) -> CGSize
还有一些私有函数和属性。如果我想经常重用它们,我应该把所有这些方法放在哪里?
【问题讨论】:
-
还有另外一个选项可以扩展这两个类并将这些方法放入其中。
-
有没有这样做的例子?这是最直接的方法,但我不知道它应该是什么样子
标签: ios swift architecture uicollectionview