尝试在UICollectionView中选择多个单元格,并在滚动时选择更改。为什么会这样,请指导。 下面是代码。我试过了。
- (void)collectionView:(UICollectionView *)collectionView didSelectItemAtIndexPath:(NSIndexPath *)indexPath
{
printf("Selected View index=%d",indexPath.row);
itemPaths = [self.collectionView indexPathsForSelectedItems];
UICollectionViewCell* cell=[self.collectionView cellForItemAtIndexPath:indexPath];
cell.contentView.backgroundColor = [UIColor colorWithPatternImage:[UIImage imageNamed:@"blue_s.png"]];
}
- (void)collectionView:(UICollectionView *)collectionView didDeselectItemAtIndexPath:(NSIndexPath *)indexPath
{
UICollectionViewCell* cell=[self.collectionView cellForItemAtIndexPath:indexPath];
cell.contentView.backgroundColor = [UIColor colorWithPatternImage:[UIImage imageNamed:@"yellow_seat.png"]];
}
我还应该尝试什么。
答案 0 :(得分:0)
您可以做一件事来解决这个问题,您可以使用UICollection View的自定义单元格为每个单元格赋予标记,以便它具有唯一标识
答案 1 :(得分:0)
由于您可能会重复使用单元格,因此当您将单元格移出(cellForItemAtIndexPath)时,您需要检查是否已选择indexPath并为单元格着色。您可能也希望对细胞进行脱色,因为重复功能可能会在某些情况下发送回彩色单元格。