Création d'Outlets et d'Actions depuis Interface Builder

ArachanteArachante Membre
novembre 2010 modifié dans Xcode et Developer Tools #1
Comment depuis "Interface Builder" créer des "Actions" et des "Outlets" puis injecter leurs déclarations dans les squelettes de Classes présents dans "Xcode" ?

Je m'explique plus en détail. En fait le processus de création qui (à  moi  ::)  ) me parait le plus naturel, c'est de :

Créer un nouveau projet avec "Xcode" en choisissant un des modèles proposés.
Créer l'interface graphique avec "Interface Builder" en modifiant le fichier[tt].xib[/tt] adéquat. C'est très agréable, voire ludique, et cela permet de valider ce qu'attendent les utilisateurs de mon application.
Une fois les éléments graphiques correctement définis, placés et nommés.
J'aimerais, tout en restant dans "IB" créer les actions et les outlets à  leurs connecter. ça tombe bien à  ce moment, j'ai toutes les infos sous la main pour ça.

Je me verrais bien cliquer sur un "+" dans l'un des tab de l'inspecteur et y préciser mes outlets / actions.  Surtout que j'ai remarqué en cliquant sur l'engrenage en bas à  gauche de la fenêtre de l'outil "Library" la possibilité de "[tt]Write Updated Class Files[/tt]"  ... et que ça marche !...  "IB" génère bien deux fichiers ([tt].h[/tt] et [tt].m[/tt]) correspondants, mais ils sont désespérément vides, vu que je n'ai pas réussi précédemment à  ajouter mes définitions.    ???

Après, et seulement après, je me propose de basculer sous "Xcode" pour implémenter le corps des méthodes adéquates.

Réponses

  • laudemalaudema Membre
    17:28 modifié #2
    C'est fait pour !
    C'était d'ailleurs la manière de faire du temps de Project Builder si on en croit un vieux livre de développement Cocoa "Learning Cocoa with Objective C"
    L'interface a été remaniée, ça avait disparu et, comme tu l'as vu, c'est revenu.

    http://developer.apple.com/library/mac/documentation/DeveloperTools/Conceptual/IB_UserGuide/CodeIntegration/CodeIntegration.html#//apple_ref/doc/uid/TP40005344-CH18-SW4

    Have fun ;)
  • ArachanteArachante Membre
    novembre 2010 modifié #3
    A oui, je n'avais pas remarqué les menus déroulants ...  :o

    Donc si je résume, une technique (ça vaut pas un vrai tuto, mais bon) pour débuter un projet :


    Créer un nouveau projet avec "Xcode" en choisissant un des modèles proposés.

    Créer l'interface graphique avec "Interface Builder" en modifiant le fichier ViewController.xib.

    Choisir les différents éléments nécessaires au projet dans la bibliothèque à  notre disposition (ToolâžœLibrary ou ⇧⌘L)

    Une fois les éléments graphiques correctement définis, placés et nommés.

    Sélectionner, l'onglet "Class" de l'outil "Library".
    Retrouver et sélectionner votre contrôleur de vue "xxxViewController" dans la liste des classes disponibles.

    Dans le cadre du dessous, placer le menu déroulant sur "Outlets" par défaut il est sur "Inheritance".

    Cliquer sur le "+" pour définir vos outlets.

    Dérouler le même menu sur "Actions" puis "+" et de même définir les actions.

    Cliquer sur l'engrenage en bas à  gauche de la fenêtre de l'outil "Library" , choisir "Write Updated Class Files".  "IB" génère alors deux fichiers (.h et .m) correspondants, à  remplacer ou à  fusionner avec les squelettes déjà  existants.

    Il ne reste plus qu'à  lier les contrôles de la vue et nos nouvelles propriétés.

    Control-Draguer depuis l'icône de la fenêtre "ViewControler.xib" vers les éléments graphiques de l'interface graphique de la fenêtre "View"

    Réciproquement Control-Draguer depuis les "actionneurs" vers l'icône de la classe chargée d'y réagir.

    Sauver le fichier .xib

    Finalement basculer sous "Xcode" pour implémenter les méthodes adéquates.



    N'hésitez surtout pas à  corriger les erreurs et incohérences ci-dessus.

Connectez-vous ou Inscrivez-vous pour répondre.