Comment peut-on modifier dynamiquement textLabel ou detailTextLabel d'un UITableViewCell spécifique? Fondamentalement, je télécharge un ensemble de fichiers à partir d'Internet chaque fois que l'utilisateur tape sur une cellule. Maintenant, au lieu de l'indicateur de progression, je voudrais afficher le nom du fichier en cours de téléchargement. Je voudrais continuer à mettre à jour detailTextLabel pour montrer les noms de fichiers (actuels) jusqu'à ce que tous les fichiers soient téléchargés.Mise à jour dynamique de UITableViewCell
Répondre
En supposant que vous êtes dans une méthode comme tableView:didSelectRowAtIndexPath:
(ou une autre façon d'obtenir le chemin d'index à la cellule), vous pouvez faire quelque chose comme ceci:
UITableViewCell *cell = [self.tableView cellForRowAtIndexPath:indexPath];
UILabel *label = nil;
for(UIView *subview in cell.contentView.subviews) {
if([subview isKindOf:[UILabel class]]) {
label = (UILabel*)subview;
break;
}
}
if(label)
label.text = @"New text";
Ceci trouvera la première UILabel dans la cellule, et peut ne pas fonctionner si votre cellule a plus d'une étiquette. Une méthode plus robuste consiste à définir l'étiquette de l'étiquette lorsque vous créez la cellule (cela peut être fait dans Interface Builder ou dans le code). Ensuite, vous pouvez trouver l'étiquette comme ceci:
UITableViewCell *cell = [self.tableView cellForRowAtIndexPath:indexPath];
UILabel *label = nil;
for(UIView *subview in cell.contentView.subviews) {
if([subview isKindOf:[UILabel class]] && [subview tag] == kDetailLabelTag) {
label = (UILabel*)subview;
break;
}
}
if(label)
label.text = @"New text";
Juste au cas où quelqu'un a encore ce problème, je l'ai eu du succès avec des appels à la méthode reloadData. Par exemple, dans mon code dans la méthode viewWillAppear, j'ai la ligne:
[tableSettings reloadData];
Où est tablesettings le nom de mon UITableView.
- 1. uitableviewcell mise à jour
- 2. Mise à jour de UIProgressView sur UITableViewCell
- 3. Mise à jour de UITableViewCell sans recharger
- 4. UITableViewCell Image non mise à jour
- 5. Mise à jour dynamique sql
- 6. Mise à jour dynamique jTable
- 7. UITableView Mise à jour dynamique
- 8. Mise à jour dynamique de la progression de UIProgressView
- 9. Mise à jour de UITableViewCell à partir d'une autre vue
- 10. Mise à jour dynamique de l'application web
- 11. Mise à jour dynamique de Dojox ListItem
- 12. Mise à jour de UITableViewCell non actualisation de l'interface utilisateur
- 13. Vue de sous-classe personnalisée UITableViewCell non mise à jour
- 14. UITableViewCell detailTextLabelMise à jour
- 15. Mise à jour dynamique du fichier RDF
- 16. Mise à jour d'un contrôle dynamique
- 17. Rails forme dynamique mise à jour
- 18. Mise à jour dynamique VivaGraph JS
- 19. Mise à jour dynamique d'un UILabel
- 20. Mise à jour dynamique dans asp.net
- 21. Mise à jour dynamique avec JPA
- 22. Curseur Dojo: mise à jour dynamique
- 23. Mise à jour dynamique datalist via Ajax
- 24. Mise à jour dynamique des uiimages
- 25. BlackBerry mise à jour dynamique ListField
- 26. HighChart sur android mise à jour dynamique
- 27. mise à jour dynamique d3.js treemap
- 28. CHeckboxList Mise à jour dynamique et style
- 29. Mise à jour dynamique et lecture dynamique des cookies
- 30. Question concernant la mise à jour d'un UITableViewCell sur l'iPhone
Merci Costa !! – NSExplorer