Gestion des images ressources
muqaddar
Administrateur
Salut,
Je ne comprends pas bien comment le couple IB/Xcode gère les images dans les bundles.
Sur le HD, je fais un dossier Images dans mon projet, avec des sous-dossiers, pour classer mes images. Je je glisse dans Xcode ds les ressources (option "create foler references for added folders"), le dossier apparaà®t en bleu. Avec les sous-dossiers conservés, il est impossible d'en effacer (dossiers ou images) ni d'en rajouter.
A ce stade, ces images apparaissent quand je vais les chercher par le code ds mon prog.
Dans IB, si je veux ajouter une de ces images ds mon interface, elles ne sont pas dans l'onglet Images du NIB. Je dois les ré-ajouter à la main par glisser déposer depuis mon dossier sur le HD. Là , je peux ensuite les placer ds mon interface. Et il m'est impossible de les supprimer depuis IB.
Elles sont mises ds Xcode, ds le dossier Ressources. Et là je peux les supprimer. Sauf, qu'elles sont en double (ds xcode) avec le premier dossier que j'ai fait tout à l'heure ! Bref, tout ça est étrange et bien compliqué.
Pourquoi les imags ajoutées d'un côté n'apparaitraient pas de l'autre ?
Je ne comprends pas bien comment le couple IB/Xcode gère les images dans les bundles.
Sur le HD, je fais un dossier Images dans mon projet, avec des sous-dossiers, pour classer mes images. Je je glisse dans Xcode ds les ressources (option "create foler references for added folders"), le dossier apparaà®t en bleu. Avec les sous-dossiers conservés, il est impossible d'en effacer (dossiers ou images) ni d'en rajouter.
A ce stade, ces images apparaissent quand je vais les chercher par le code ds mon prog.
Dans IB, si je veux ajouter une de ces images ds mon interface, elles ne sont pas dans l'onglet Images du NIB. Je dois les ré-ajouter à la main par glisser déposer depuis mon dossier sur le HD. Là , je peux ensuite les placer ds mon interface. Et il m'est impossible de les supprimer depuis IB.
Elles sont mises ds Xcode, ds le dossier Ressources. Et là je peux les supprimer. Sauf, qu'elles sont en double (ds xcode) avec le premier dossier que j'ai fait tout à l'heure ! Bref, tout ça est étrange et bien compliqué.
Pourquoi les imags ajoutées d'un côté n'apparaitraient pas de l'autre ?
Connectez-vous ou Inscrivez-vous pour répondre.
Réponses
P-e a-t-elle disparu avec Xcode ?
Les images utilisables dans IB (notamment pour les utiliser dans des NSImageView) sont des objets NSImage créés par IB à partir d'un fichier que tu déposes dans le MainMenu.nib (onglet Image).
Quand tu déposes une telle image, IB copie automatiquement ladite image dans la section Resources du bundle de l'appli, et ensuite instancie une NSImage via la méthode +[NSImage imageNamed:] en utilisant le nom de l'image déposée.
Or la méthode imageNamed: ne sait chercher des fichiers image par leur nom que dans la partie Resources du bundle (ressource générale et ressources localisées).
Tu ne peux donc pas utiliser IB et des images hors de Resources. Par contre, rien ne t'empêches de le faire par programme (via IBOutlets dans un awakeFromNib par exemple, ou via les tags et une table d'association chemin-de-fichier <-> NSImage toujours dans le awakeFromNib).
.
Une qui te transforme tes dossiers en bleu, et l'autre en jaune... c'est cela qui m'intrigue aussi.
Merci Eddy.