59 votes

Comment la vue est-elle initialisée lors du chargement via un storyboard?

Lorsque la vue est chargé manuellement, développeur reste en contrôle quand il s'agit de l'initialisation, on choisit ce que l'initialiseur d'appel, les variables à définir etc.

Lorsque la vue est chargé à partir de la table de montage séquentiel segue ... ce qui se passe pour que l'initialiseur? Où dois-variables d'être ensemble, je voudrais être disponible une fois le point de vue avait été chargé?

S'il vous plaît aidez-moi à comprendre la séquence ici. Comment est instance de la classe créée ici, qui la crée et comment pouvons-nous intervenir et d'aider à mettre à notre goût?

92voto

Caleb Points 72897

Lorsqu'une vue est chargé à partir d'une plume ou d'un scénario, c'est -initWithCoder: méthode est appelée. Comme -initWithFrame:, -initWithCoder: est un initialiseur de UIView. Si vous allez faire tout d'initialisation personnalisée pour une sous-classe UIView, vous devriez assurez-vous qu'il se passe pour ces deux méthodes. Une technique courante consiste à ajouter une commune de la méthode d'initialisation que vous appelez à partir à la fois -initWithFrame: et -initWithCoder:. Voir ma réponse à affichage Personnalisé et la mise en œuvre de méthode init? pour une description plus détaillée.

Notez que la documentation -initWithFrame: explique:

Si vous utilisez l'Interface Builder pour la conception de votre interface, cette méthode est pas appelé lors de votre point de vue les objets sont ensuite chargés de la plume fichier. Des objets dans un fichier nib sont reconstitués et ensuite initialisé à l'aide de leur initWithCoder: méthode, qui modifie les attributs de la vue de faire correspondre les attributs stockés dans le fichier nib.

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