extension扩展属性 定义 使用

在UICollectionView中的Cell展示UIImageView,同时绑定UITapGestureRecognizer事件,传值section 和 item

定义

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
extension UIImageView {
private struct definestruct{
static var defineSection:Int = 0
static var defineItem:Int = 0
}
var definesection:Int{
get{
return objc_getAssociatedObject(self, &definestruct.defineSection) as! Int
}
set(value){
objc_setAssociatedObject(self, &definestruct.defineSection, value, objc_AssociationPolicy.OBJC_ASSOCIATION_RETAIN_NONATOMIC)
}
}
var defineitem:Int{
get{
return objc_getAssociatedObject(self, &definestruct.defineItem) as! Int
}
set(value){
objc_setAssociatedObject(self, &definestruct.defineItem, value, objc_AssociationPolicy.OBJC_ASSOCIATION_RETAIN_NONATOMIC)
}
}
}

使用

1
2
imgview.definesection = indexPath.section
imgview.defineitem = indexPath.item