@buoge
2017-06-01T13:55:37.000000Z
字数 843
阅读 901
程序构建
public protocol CellImageSacleAnimateDelegate: NSObjectProtocol{
touchBeganWithScale() //开始触摸
touchEndWithScale() // 触摸结束
didSelected() // 执行触摸事件方法
}
func collectionView(_ collectionView: UICollectionView, shouldHighlightItemAt indexPath: IndexPath) -> Bool {
// 如果他们都实现了ScaleImage的Delegate就可以转化为 Delegate.touchBeganWithScale()
// Collection view 继承统一事件处理,所有collection cell的点击都可以被父类获取,所有的点击都可以汇聚到一处
// 在不同cell 实现不同代理,在父类做类型判断,又可以对不同子类的不同事件进行处理
if let itemCouponCell = collectionView.cellForItem(at: indexPath) as? ItemWithCouponCVCell {
itemCouponCell.touchBeganWithScale()
}else if let combinationCell = collectionView.cellForItem(at: indexPath) as? ProductCombinationItemCVCell {
combinationCell.touchBeganWithScale()
} else if let indexItemCell = collectionView.cellForItem(at: indexPath) as? IndexItemCVCell {
indexItemCell.touchBeganWithScale()
}
return true
}