UITableView et ses delegates/datasource
Paisible.fr
Membre
Bonjour,
Je démarre un petit projet pour faire des tests et approfondir le SDK iPhone.
Je voudrais une application avec une tabBar en bas avec 2 choix. Le premier item affiche une UIView avec un UILabel et un UITextView. Le second item affiche une UIView avec un UILabel et une UITableView.
Pour le premier item pas de prob. Pour le second cela se corse un peu.
Je procède de la manière suivante :
- Création d'un XIB de type "View XIB" dans xcode
- Création d'une Cocoa Touch class de type "UITableViewController subclass" intitulée "TableViewDelegate"
Dans Interface builder j'ajoute dans ma vue un "UITableView".
J'ajoute un objet UITableViewController. Dans "class" j'y met ma classe "TableViewDelegate"
Et je fixe le delegate et le source de ma UITableView sur mon object UITableViewController.
Résultat : ca plante grave et je comprends pas trop pourquoi.
J'ai du rater un petit détail, mais mon dimanche n'y à pas suffit pour mettre le doigt dessus.
Une idéee, un conseil ?
Merci
PS : J'ai lu les tutoriaux du ranch, la doc apple, et divers trucs sur le net.
Je démarre un petit projet pour faire des tests et approfondir le SDK iPhone.
Je voudrais une application avec une tabBar en bas avec 2 choix. Le premier item affiche une UIView avec un UILabel et un UITextView. Le second item affiche une UIView avec un UILabel et une UITableView.
Pour le premier item pas de prob. Pour le second cela se corse un peu.
Je procède de la manière suivante :
- Création d'un XIB de type "View XIB" dans xcode
- Création d'une Cocoa Touch class de type "UITableViewController subclass" intitulée "TableViewDelegate"
Dans Interface builder j'ajoute dans ma vue un "UITableView".
J'ajoute un objet UITableViewController. Dans "class" j'y met ma classe "TableViewDelegate"
Et je fixe le delegate et le source de ma UITableView sur mon object UITableViewController.
Résultat : ca plante grave et je comprends pas trop pourquoi.
J'ai du rater un petit détail, mais mon dimanche n'y à pas suffit pour mettre le doigt dessus.
Une idéee, un conseil ?
Merci
PS : J'ai lu les tutoriaux du ranch, la doc apple, et divers trucs sur le net.
Connectez-vous ou Inscrivez-vous pour répondre.
Réponses
Dans le xib que tu as créé, il n'y a pas à ajouter de UITableViewController. C'est le File's Owner qui doit être déclaré de classe TableViewDelegate .
Par contre, il faut ajouter dans le xib principal un UITableViewController, en faisant un paramétrage correct dans l'inspecteur pour les intervenants dans ce xib. Le File's Owner du xib créé n'est qu'un proxy de l'instance définie dans le xib principal.
Autant je comprends le principe et cela m'éclaire, autant je vois pas comment je vais pouvoir relier le proxy à l'instance définie dans le XIB principal... cela me laisse perplexe.
Tu n'as pas à t'en occuper, lors du désarchivage du xib principal, un TableViewController est créé en désarchivant le xib associé. On peut considérer que l'instance du TableViewController devient ainsi le File's Owner du xib secondaire ...