2010-06-02 4 views
0

J'ai une tableview dont le contenu est géré par les données de base. Lorsque je sélectionne une ligne, une vue détaillée est insérée et affiche plus d'informations. Comment puis-je passer à l'enregistrement suivant (celui qui se trouve en dessous de celui que j'ai sélectionné dans le tableau précédent) via un bouton "suivant" dans la vue? Idem pour un bouton précédent, mais cela devrait être très similaire ...Obtenir le prochain enregistrement avec des données de base

thx beaucoup! Ps: Une question de plus ... comment puis-je obtenir un enregistrement aléatoire de mon fetchedResultsController? Sebastian

ps

Répondre

0

L'enregistrement "suivant" change en fonction du tri que vous avez appliqué à l'extraction qui a renvoyé les données de la table. Afin de reproduire l'ordre de la table, vous devez reproduire le fetch.

Dans votre vue détaillée, vous aurez besoin d'une extraction avec la même entité et le même descripteur de tri que celui utilisé pour générer la vue tabulaire. Vous devrez suivre l'index de l'enregistrement en cours affiché dans la vue détaillée. Ensuite, aller à l'enregistrement suivant ou précédent est juste une question d'aller à l'élément suivant ou précédent dans le tableau retourné par fetch. S'il s'agit d'une partie importante de votre application, vous pouvez créer la commande dans votre modèle de données en associant les entités les unes aux autres avec une relation "suivante" et "précédente". Cela les transforme en une liste chaînée facile à parcourir.

Questions connexes