2 votes

Ajout d'un contrôleur de navigation à une UITableView existante

Je suis nouveau à la fois en Objective-C et dans l'ensemble de l'iPhone SDK, alors s'il vous plaît soyez indulgent avec cette question de débutant.

J'ai réussi à implémenter une vue de tableau avec un tableau pour le titre, le sous-titre et l'icône de la cellule et ça marche très bien. Ce que j'aimerais faire, c'est charger un fichier PDF en fonction de la cellule sélectionnée et j'ai compris qu'une vue Web semble être la meilleure option?

J'ai rencontré un blocage, je ne peux pas ajouter un contrôleur de navigation à la vue de tableau existante dans le fichier xib (j'ai commencé avec une application à vue unique) et tout ce que je lis sur internet suggère de commencer d'une manière différente. Soit je fais quelque chose complètement de travers, soit j'ai complètement raté quelque chose.

Est-il donc possible d'implémenter ce contrôleur de navigation et cette vue Web avec ce que j'ai actuellement, ou vais-je devoir tout recommencer en copiant-collant divers morceaux de code?

Toute aide est appréciée.

Merci.

Matt.

3voto

Craig Otis Points 5399

Si vous avez un fichier XIB qui représente un UITableView, alors ce que vous devriez pouvoir faire est :

1) Lors de la présentation de votre UITableView :

UITableViewController *tableViewCon = ...; // Le charger à partir du fichier XIB
UINavigationController *navCon = [[UINavigationController alloc] initWithRootViewController:tableViewCon];
// Présenter le navCon, comme vous le faites actuellement avec votre table view

2) Dans votre UITableView, lorsque une cellule est pressée :

WebView *webView = ...; // Créer la vue web, et charger également une URL
[self.navigationController pushViewController:webView animated:YES];

1voto

Andrey Points 179

Je pense que vous devez réécrire votre application. Vous ne pouvez pas ajouter une vue de navigation à une vue de tableau. Le bon schéma pour votre tâche est de commencer avec un contrôleur de navigation comme racine de votre application et de définir votre contrôleur de vue de tableau comme contrôleur racine pour le contrôleur de navigation. Ensuite, lorsque l'utilisateur sélectionne une ligne dans le tableau, vous devez ajouter une vue web à votre contrôleur de navigation.

Référez-vous à la documentation de la classe UINavigationViewController.

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X