一个页面中有个两个 UICollectionView ,那么应当如何使用Delegate与DataSource呢

例如:

@IBOutlet weak var Collection01: UICollectionView!
@IBOutlet weak var Collection02: UICollectionView!

那么如何分别为他们定义Delegate与DataSource的方法呢,例如下面这个返回单元格数量的方法

func collectionViewcollectionView: UICollectionView, numberOfItemsInSection section: Int -> Int { return 2
} 

通过Extension用两个类去做Delegate和DataSource,也可以给个Tag判断

专门写两个类用来做dataSource,其实把datasource从controller里抽出来好处多多。。。

@Taku 前半句是正确的解决方案。不过后半句的 Tag 判断并不好,效率低。
我说个简单的实现:

func collectionViewcollectionView: UICollectionView, numberOfItemsInSection section: Int -> Int { if collectionView == Collection01 { return 1 } else if collectionView == Collection02 { return 2 } return 0
}

PS:变量名称头字母应当小写。

发表评论

电子邮件地址不会被公开。 必填项已用*标注