我从 UICollectionViewCell 覆盖 (BOOL)isSelected {} 以更改选择时的单元格外观。如果我单击一个单元格,这确实可以按预期工作。但是如果我手动设置选择,则永远不会调用 isSelected 方法。有没有优雅的方法来解决这个问题?
我的自定义单元格中的重写方法:
(BOOL)isSelected {
if ([super isSelected]) {
self.contentView.alpha = 0.2;
self.contentView.backgroundColor = [UIColor greenColor];
return YES;
} else {
self.contentView.alpha = 1.0;
self.contentView.backgroundColor = [UIColor clearColor];
return NO;
}
}
我想在我的控制器中手动选择一个单元格,如下所示:
[self.collectionView selectItemAtIndexPath:indexPath animated:NO scrollPosition:UICollectionViewScrollPositionNone];