Superposition de vues de même niveau
UniX
Membre
Salut.
Je me pose une question de fond sur les vues.
Lorsque l'on souhaite enpiler plusieurs objets au niveau d'une vue, quelle est la meilleure méthode pour le faire ?
Je m'explique avec des exemples : une vue avec un fond coloré, un cadre qui l'entoure, et des boutons. Dans IB, je pourrais créer une vue perso, écrire le code qui va bien pour faire la coloration et le cadre, et de nouveau dans IB déposer au dessus de cette vue les boutons. Mais je ne respecte pas la règle qui dit que des vues de même niveau ne doivent pas être superposées .....
Il y a la solution de tout écrire en code, mais lorsque la vue est plus chargée que quelques boutons, ça devient dificile à gérer .......
Avec IB pour pouvoir rester dans des manipulations visuelles, comment faut-il s'y prendre ???
Faut-il créer sa vue à part de la fenêtre, et dans le awakeFromNib l'insérer dans la fenêtre ?
Y a t-il d'autres solutions ?
Je me pose une question de fond sur les vues.
Lorsque l'on souhaite enpiler plusieurs objets au niveau d'une vue, quelle est la meilleure méthode pour le faire ?
Je m'explique avec des exemples : une vue avec un fond coloré, un cadre qui l'entoure, et des boutons. Dans IB, je pourrais créer une vue perso, écrire le code qui va bien pour faire la coloration et le cadre, et de nouveau dans IB déposer au dessus de cette vue les boutons. Mais je ne respecte pas la règle qui dit que des vues de même niveau ne doivent pas être superposées .....
Il y a la solution de tout écrire en code, mais lorsque la vue est plus chargée que quelques boutons, ça devient dificile à gérer .......
Avec IB pour pouvoir rester dans des manipulations visuelles, comment faut-il s'y prendre ???
Faut-il créer sa vue à part de la fenêtre, et dans le awakeFromNib l'insérer dans la fenêtre ?
Y a t-il d'autres solutions ?
Connectez-vous ou Inscrivez-vous pour répondre.
Réponses
Tu peux très bien dans IB créer plusieurs niveaux de vues.
Un exemple type est quand tu fais une scrollview : c'est bien une vue (scrollview) qui en contient une autre (nsview perso, nstableview...).
Pour faire cela crée d'abord ta vue extérieure (celle que tu dit être colorée), puis ensuite prend dans ta palette d'outils un NSButton, et déplace-le hors de la palette d'outils par dessus la vue "extérieure" que tu as déjà placée. Cette dernière (vue "encadrante") va alors se colorer d'un liseret bleu pour t'indiquer que si tu lâches, tu déposeras ton NSButton dans cette vue.
Astuce : si tes vues "intérieures" sont déjà placées dans IB, tu peux aussi les sélectionner, puis faire un couper-coller : au moment où tu fais le "coller", tu peux te placer dans la "vue extérieure" (double-clic) et à ce moment là elles seront collées dedans.
En fait lors de cette manipulation, les vues persos perdent leur fond vert et le nom de la classe disparaà®t .... Je pensais donc à tort que la manipulation était mauvaise ...!
Merci Ali.
Faut-il obligatoirement qu'il n'y est plus d'erreurs là -dedans ? D'ailleurs, il m'en met plusieurs pour les quelles je suis perplexe ....
Et le bouton Validate, il sert à quoi ?