2010-08-12 4 views
0

Dans mon application, j'analyse XML pour créer un UITableView. Lorsqu'un utilisateur sélectionne une ligne, il modifie le fichier analysé et recharge UITableView.UINavigationController rechargement UITableView

Je souhaite créer un bouton de retour afin que l'utilisateur puisse revenir à la page XML précédente qu'il affichait. En bref, comment puis-je demander au contrôleur de navigation de créer une flèche arrière pour cette page alors que tout ce que je fais est de recharger mon UITableView?

Répondre

1

Je suggère fortement de construire un autre contrôleur (c'est-à-dire UITableViewController) et de le pousser au lieu de simplement recharger la table. Cela rend le bouton automagiquement, et (majeur plus ici), il anime l'ensemble de creuser/reculer d'une manière que l'utilisateur attend. En guise de note, je n'ai pas réussi à obtenir un bouton de style arrière une fois que je l'ai essayé, juste un simple bouton normal (faites un nouveau bouton et réglez-le sur la barre de navigation).

1

Ce que vous décrivez est une navigation. Plutôt que de recharger les données de la table, il suffit de pousser un nouveau contrôleur de vue sur la pile de navigation chaque fois qu'une ligne est tapée. Ceci est un modèle fondamental dans le développement de l'iPhone. Voici Apple sample code pour une vue de table à plusieurs niveaux.

+0

Je ne peux pas pousser une nouvelle tableView J'ai probablement 20 000 fichiers XML qui sont tous analysés de la même manière. Je ne peux pas créer un nouveau contrôleur View pour chaque fichier XML. –

+0

Peut-être que je suis un malentendu, mais ne pourriez-vous pas construire un contrôleur générique pour afficher des données XML? Le contrôleur de vue peut pousser des instances de lui-même, en passant le code XML requis dans son initialiseur. – Justin

+0

Mais ne serait-ce pas limiter jusqu'où l'utilisateur peut aller dans la hiérarchie. –

Questions connexes