human
Quand utiliser UICollectionView à la place de UITableView
gpt
Cela dépend des exigences. La façon dont l'application fonctionne détermine quel type d'interface utilisateur intégrer dans l'application.
Les gens utilisent principalement ```UICollectionview``` pour créer des interfaces utilisateur avec plusieurs images affichées dans une grille. Cela nécessiterait une logique complexe avec ```UITableView```, mais avec ```UICollectionview```, ce serait facile.
Lors de l'utilisation de ```UICollectionview```, vous n'avez pas besoin de définir des boutons avec des balises ou d'autres choses en obtenant les valeurs des éléments sélectionnés. Vous pouvez simplement utiliser ```-(void)collectionView:(UICollectionView *)collectionView didSelectItemAtIndexPath:(NSIndexPath *)indexPath``` et dans ```UITableViewDelegate```:
````-(void)tableView:(UITableView *)tableView didSelectRowAtIndexPath:(NSIndexPath *)indexPath`
```
Vous obtenez la ligne sélectionnée au lieu de l'élément, donc pour créer une grille ou des éléments modifiés, l'utilisation de ```UICollectionview``` est préférable.
Pour les détails de chaque élément de la liste, les gens utilisent ```UITableView``` car elle affiche plus d'informations sur chaque élément.
Documentation Apple:
Référence de la classe UICollectionView

  La classe UICollectionView gère une collection ordonnée d'éléments de données et les présente à l'aide de mises en page personnalisables. Les collections offrent la même fonction générale que les tableaux, sauf qu'une collection peut prendre en charge plus que des mises en page à une seule colonne. Les collections prennent en charge des mises en page personnalisables qui peuvent être utilisées pour implémenter des grilles à plusieurs colonnes, des mises en page en mosaïque, des mises en page circulaires et bien d'autres encore. Vous pouvez même modifier dynamiquement la mise en page d'une collection si vous le souhaitez.

Référence de la classe UITableView

  Une table affiche une liste d'éléments dans une seule colonne. UITableView est une sous-classe de UIScrollView, qui permet aux utilisateurs de faire défiler la table, bien que UITableView ne permette que le défilement vertical. Les cellules composant les éléments individuels de la table sont des objets UITableViewCell; UITableView utilise ces objets pour dessiner les lignes visibles de la table. Les cellules ont un contenu - des titres et des images - et peuvent avoir, près du bord droit, des vues accessoires. Les vues accessoires standard sont des indicateurs de divulgation ou des boutons de divulgation de détails; le premier mène au niveau suivant dans une hiérarchie de données et le second mène à une vue détaillée d'un élément sélectionné. Les vues accessoires peuvent également être des contrôles de framework, tels que des interrupteurs et des curseurs, ou des vues personnalisées. Les tables peuvent entrer en mode d'édition où les utilisateurs peuvent insérer, supprimer et réorganiser les lignes de la table.