我试图在UICollectionView中为我的单元格实现一个自定义选择样式.即使可以在didSelect和didDeSelect方法中手动执行此操作,我想通过在UICollectionViewCell中操作“selected”变量来实现此目的.
我有这个代码:
- override var selected: Bool {
- get {
- return super.selected
- }
- set {
- if newValue {
- self.imageView.alpha = 0.5
- println("selected")
- } else if newValue == false {
- self.imageView.alpha = 1.0
- println("deselected")
- }
- }
- }
现在,当我选择一个单元格时,单元格被突出显示,但是“选择”将被打印两次,并且取消选择不起作用(即使实现了两个UICollectionView方法).
我该怎么办?谢谢!
解决方法
通过进入代码来了解它.问题是super.selected没有被修改.所以我更改了代码:
- override var selected: Bool {
- get {
- return super.selected
- }
- set {
- if newValue {
- super.selected = true
- self.imageView.alpha = 0.5
- println("selected")
- } else if newValue == false {
- super.selected = false
- self.imageView.alpha = 1.0
- println("deselected")
- }
- }
- }
现在它的工作