Il existe plusieurs façons de gérer cela, mais l'une des plus simples consiste à stocker les références aux cellules dans une collection afin de pouvoir facilement envoyer des messages à toutes les cellules. Par exemple, vous pouvez ajouter une propriété comme la suivante :
@propriété (forte, nonatomique) IBOutletCollection(NSArray) *cells ;
@property (strong, nonatomic) IBOutletCollection(UITableViewCell) NSArray *cells;
et connectez-le à chacune des cellules de votre fichier nib ou de votre storyboard. (Si vous n'utilisez pas Interface Builder, laissez tomber le bouton IBOutletCollection
et remplissez le tableau vous-même à chaque fois que vous créez des cellules).
Vous pouvez ensuite gérer la sélection comme suit :
- (void)tableView:(UITableView *)tableView didSelectRowAtIndexPath:(NSIndexPath *)indexPath
{
for (UITableViewCell *currCell in self.cells)
{
currCell.accessoryType = UITableViewCellAccessoryNone;
}
UITableViewCell *selectedCell = [tableView cellForRowAtIndexPath:indexPath];
selectedCell.accessoryType = UITableViewCellAccessoryCheckmark;
}