我正在创建一个座位图,已经预订的座位很少,其他的可以,所以,我需要用不同的颜色显示已经预订的座位和可用的座位。下面是我用来显示选中和取消选中的单元格的代码,但是如何让显示已经预订的单元格已经被选中。
- (UICollectionViewCell *)collectionView:(UICollectionView *)collectionView cellForItemAtIndexPath:(NSIndexPath *)indexPath
{
UICollectionViewCell *cell = [self.collectionView dequeueReusableCellWithReuseIdentifier:@"Cell" forIndexPath:indexPath];
NSLog(@"indexpath row:%d", indexPath.row);
int v;
NSString *cnt = [NSString stringWithFormat:@"%@",[arrSeats objectAtIndex:indexPath.section]];
v = [cnt intValue];
if(indexPath.item < v)
{
if(cell.selected){
cell.contentView.backgroundColor = [UIColor colorWithPatternImage:[UIImage imageNamed:@"yelow_seat.png"]]; // highlight selection
}
else
{
cell.contentView.backgroundColor = [UIColor colorWithPatternImage:[UIImage imageNamed:@"blue_seat.png"]]; // Default color
}
}else{
cell.contentView.backgroundColor = [UIColor colorWithPatternImage:[UIImage imageNamed:@"blank_seat.png"]];
}
return cell;
}
下面是我试图用来为每个部分添加值的代码。每次数组为一个部分添加值时,它都会将其添加到字典中,然后清除数组,并在下次数组为下一部分添加值并放入字典时再次清除,但在删除数组对象时字典不保存该值。
arrStatus = arrSeatsStatus;
[seatsDict setObject:arrStatus forKey:[NSString stringWithFormat:@"%d",i]];
i++;
[arrSeatsStatus removeAllObjects];
我有一个数组,可以将所有座位的状态保持为开或关,但没有得到如何实现它。请指导以上。提前致谢。