J'aimerais beaucoup mettre temporairement en évidence une UITableViewCell pour attirer l'attention sur le fait que les données qu'elle contient ont changé.
il existe une méthode UITableViewCell : -setHighlighted :(BOOL) animated :(BOOL) mais je n'arrive pas à lui faire faire quoi que ce soit ?
Voici la partie pertinente du contrôleur de vue :
- (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath {
UITableViewCell *cell;
switch (indexPath.section) {
case 0: {
if (indexPath.row == 0) {
cell = [[UITableViewCell alloc ] initWithStyle:UITableViewCellStyleDefault
reuseIdentifier:@"currentLoc"];
cell.accessoryType = UITableViewCellAccessoryNone;
cell.textLabel.text = @"This is the special cell";
}
[cell setHighlighted:YES animated:YES];
[cell setHighlighted:NO animated:YES];
//[cell setNeedsDisplay];
} else {
cell = [[UITableViewCell alloc] initWithStyle:UITableViewCellStyleDefault
reuseIdentifier:@"setLocAutomatically"];
cell.accessoryType = UITableViewCellAccessoryNone;
cell.textLabel.text = @"Foo";
}
} break;
case 1: {
cell = [[UITableViewCell alloc ] initWithStyle:UITableViewCellStyleDefault
reuseIdentifier:@"selectCity"];
cell.accessoryType = UITableViewCellAccessoryDisclosureIndicator;
if (indexPath.row == 0) {
cell.textLabel.text = @"Select a Bar";
} else {
cell.textLabel.text = @"Select a Baz";
}
} break;
}
[cell autorelease];
return cell;
}
Voir la [cell setHighlight...] ci-dessus pour ma tentative.
À ma grande frustration, la cellule ne se met pas en évidence et je n'ai pas trouvé le moyen de la faire fonctionner.
Merci,
Carl C-M