我有UICollectionView
个10个单元格。当视图加载时,所有单元格都将加载透明图像。
现在,当用户选择特定的UICollectionViewCell
时,如何更改该单元格颜色,剩余的单元格将具有默认的背景颜色。
答案 0 :(得分:0)
您应该将UICollectionViewCell
子类化,将您的单元格更改为该子类,并覆盖setSelected:
。例如:
- (void)setSelected:(BOOL)selected {
if ( selected ) { // Selected cell
self.backgroundColor = [UIColor redColor];
self.textLabel.textColor = [UIColor whiteColor];
}
else { // Normal cell
self.backgroundColor = [UIColor whiteColor];
self.textLabel.textColor = [UIColor darkGrayColor];
}
}
在斯威夫特:
override var isSelected: Bool {
didSet {
if isSelected { // Selected cell
self.backgroundColor = UIColor.redColor()
self.textLabel?.textColor = UIColor.whiteColor()
} else { // Normal cell
self.backgroundColor = UIColor.whiteColor()
self.textLabel?.textColor = UIColor.darkGrayColor()
}
}
}