web-dev-qa-db-fra.com

ajout de UITableView dans UITableViewCell

Je travaille sur la coutume UITableViewCell où je veux ajouter UITableView à l'intérieur de UITableViewCell donc y a-t-il un contrôleur disponible pour faire de même

Ceci est l'image de ce que je veux ajouter dans mon projet

enter image description here

Ceci est extensible UITableView où après avoir cliqué sur la première ligne du tableau et les boutons sont développés.

Donc, si un contrôleur similaire est disponible s'il vous plaît suggérez-moi.

Merci d'avance.

16
Pradumna Patil

Je déconseille les vues imbriquées. En tant qu'utilisateur, il est frustrant de constater qu'une entité à défilement se trouve dans une autre entité à défilement. Lorsque vous effectuez un balayage, vous ne savez jamais exactement comment le contenu se comportera. Il peut falloir plusieurs balayages pour aller d'un bout du parent à l'autre. Il importe de savoir comment vous chronométrez vos balayages. Ca craint d'utiliser.

Essayez cette approche consistant à développer les sections d'une vue sous forme de tableau Développer/réduire la section dans UITableView sous iOS

Bonne chance!

4
Neal Ehardt

Apple ne recommande pas l'ajout de vues sous forme de sous-vues d'autres objets pouvant défiler. Si vous voulez développer une telle chose, voici les étapes pour vous:

  1. Créez une section séparée pour votre "vue tableau" à l'intérieur de votre vue tableau
  2. La première ligne de la section - votre ligne cliquable
  3. Lorsque l'utilisateur touche une ligne, gérez-le via - (void)tableView:(UITableView *)tableView didSelectRowAtIndexPath:(NSIndexPath *)indexPath.
  4. Insérez d'autres cellules dans cette section en modifiant votre tableau de source de données.
  5. Recharger la section ou faire une mise à jour, 

    comme 

    [self.dataSourceArray insertObject:object atIndex:indexPath.row];
    NSIndexPath *indexPath = [NSIndexPath indexPathForRow:0 inSection:0];
    [self.tableView insertRowsAtIndexPaths:@[indexPath] withRowAnimation:UITableViewRowAnimationAutomatic];
    
4
Doro

-> Prenez une section distincte pour UITableView que vous souhaitez ajouter, telle que tableView.

-> Prenez la première rangée de cette section.

-> Remplace la méthode déléguée de UITableView. - (void) tableView: (UITableView *) tableView didSelectRowAtIndexPath: (NSIndexPath *) indexPath;

-> Dans cette méthode, mettez à jour les données de tableview et rechargez cette section.

 [self.dataSourceArray removeObjectAtIndex:indexPath.section];
    [self.dataSourceArray insertObject:object atIndex:indexPath.section];
    [tableView reloadSections:[NSIndexSet indexSetWithIndex:indexPath.section] withRowAnimation:UITableViewRowAnimationAutomatic];
1
Mujahed Ansari

Avec les en-têtes, vous pouvez obtenir le même résultat. Cette réponse devrait vous aider,

Développe/réduit la section dans UITableView sous iOS

0
Manoj Kumar