2010-11-25 5 views
0

Je souhaite inclure une vue secondaire avec son propre contrôleur dans une autre vue. La façon dont j'ai vu était d'appeler addSubview dans le code, mais il doit y avoir un moyen de faire tout cela à l'intérieur du constructeur d'interface lui-même, sans le coder dans le contrôleur.Affichage à l'intérieur d'une vue

La sous-vue que je souhaite ajouter est définie dans son propre fichier xib.

Des pointeurs comment accomplir cela, ou si c'est possible?

+1

duplication possible: http://stackoverflow.com/q/1296903/143 –

Répondre

0

Dans Interface Builder de la bibliothèque, faites glisser une vue (UIView) sous votre fenêtre principale. Remarquez dans mon fichier MainWindow.xib le mode d'affichage est une liste qui vous permet de voir facilement la hiérarchie et d'ajouter plus de sous-vues lorsque vous en avez besoin.

alt text

+0

Merci, mais cela semble créer une toute nouvelle vue. Ma question a peut-être été un peu imprécise, mais j'essaie d'utiliser une vue qui est définie dans un autre fichier xib. Je vais mettre à jour la question. – sharvey

0

Vous auriez utilisé un contrôleur de vue de charger un NIB externe depuis constructeur d'interface. Cependant, il ne semble pas possible de se référer à la vue de cette NIB une fois que vous l'avez chargée.

Il ne semble pas possible d'ajouter la vue externe à un point plus profond dans la hiérarchie purement visuelle.

Vous pouvez cependant créer une classe qui chargerait automatiquement une NIB externe pendant -viewDidLoad: et l'ajouter comme son seul et unique enfant, simulant ainsi l'effet. Ensuite, faites simplement glisser un UIView et changez sa classe lorsqu'il est déposé sur la scène.

Questions connexes