Problème avec l'utilisation de plusieurs catalogues d'actifs dans XCode 5
J'ai une application qui a 2 variantes qui diffèrent seulement par leur image de marque. Pour chaque version, j'ai un AppIcon et LaunchImage dans une société de catalogue. J'ai créé une cible différente pour chaque version. Dans la deuxième version, lorsque j'essaie et sélectionnez AppIcon dans le deuxième atout catalogue, juste à l'est par défaut la première. La suppression du premier atout catalogue semble pour le résoudre, mais je préférerais un de moins "hacky" solution.
source d'informationauteur Mark Horgan
Vous devez vous connecter pour publier un commentaire.
Je pense que la meilleure solution que j'ai trouvé jusqu'à présent est de renommer actifs dans la suite de l'actif des catalogues. Par exemple, vous pourriez avoir 2 actif catalogues qui contiennent des actifs nommé AppIcon et LaunchImage. Dans le 2ème atout catalogue j'ai renommé AppIcon et LaunchImage à AppIcon1 et LaunchImage1. Alors maintenant, je peux les sélectionner dans la section des paramètres de construction.
C'est le travail, je l'utilise avec 8 buts si...
Btw, je découvre que, parfois, le lancement d'image ne fonctionne pas lors de l'utilisation de quelques cibles de sorte que vous pouvez avoir besoin de dupliquer puis sélectionner (Xcode bug).
Dans mon cas, je suis en utilisant des gousses de cacao. Les gousses de cacao script
Pods-resources.sh
en quelque sorte à l'origine du problème. retrait de l'actif des parties du script résolu le problème.Assurez-vous de nettoyer votre projet et de supprimer des données dérivées du dossier.
Parties à être supprimés peuvent être trouvés ici:
https://stackoverflow.com/a/21309102/832111
Après beaucoup de frustration, je dois nettoyer, de succès, d'images séparées actifs. Voici ce qui a fonctionné pour moi:
J'ai utilisé XCode pour créer un catalogue d'images pour la première cible (Fichier, Nouveau, un Fichier, un Atout). Il
a une adhésion pour la cible. En tant que Marque Horgan a suggéré, j'
nommé interne appIcon & launchImages, si seulement pour faciliter la
pour moi-même.
Ensuite, j'ai supprimé ce catalogue à partir de mon projet à l'aide de
l'option pour supprimer les références.
J'ai répété l'étape 1 et créé une image de catalogue pour la 2ème cible. Il a un abonnement pour la 2ème
cible uniquement. L'attribution du catalogue vers mon objectif a été difficile parce que XCode offert "N'Utilisez pas de Catalogue d'Images" comme une option. Je choisis cette option, puis XCode propose "l'Utilisation de l'Actif Catalogue". J'ai choisi mon nouveau catagot. De nouveau, j'ai nommé l'interne appIcon & launchImages à
référence de la 2ème cible, afin que je puisse le reconnaître.
Comme dans le 2, j'ai enlevé le catalogue avec une supprimer les références supprimer.
Au départ XCode pour un moment, j'ai ouvert une fenêtre du Finder et situé à mes deux
des images différentes.xcassets dossiers qui avaient été mis dans différentes
répertoires par XCode. J'ai renommé les fichiers à chaque mention de leur
cible. (J'ai aussi déplacé dans le dossier maître, mais bien sûr
c'est une préférence.)
De retour dans XCode, j'ai (re)ajouté le xcassets
fichiers, un par un, en s'assurant qu'ils ont bien été ajoutés
leur cible et copié à des ressources.
Puis dans XCode, j'ai sélectionné
chaque cible et utilisé l'onglet Général de bien spécifier l'image
catalogue pour chaque cible.
Je suis en cours d'exécution avec plusieurs cibles où chacun a ses propres actifs fichier de catalogue, avec les deux AppIcon, LaunchImage et personnalisé-je utiliser dans le storyboard pour les arrière-plans.
Il semble que le même problème que j'ai eu, lors de la sélection de l'actif catalogue pour les Icônes d'Application et de Lancer des Images, il a pris le mauvais lors de la construction. Je l'ai résolu en modifiant la Cible "d'Adhésion" pour chaque actif catalogue, l' .xcassets fichier. Elle est définie de sorte que chaque xcassets fichier seulement la cible à laquelle il est lié. Ainsi une seule cible est sélectionnée par actif catalogue. Maintenant, c'est le droit AppIcon et LaunchImage qui est disponible pour chaque cible.
J'ai utilisé @user216661 solution, mais dans mon cas, je n'ai pas eu à faire les étapes 2 à 7.
J'ai créé un atout dossier avec le nom spécifique de spécifique de la cible (dans mon cas, un atout dossier par cible). Puis j'ai ajouté des images à ceux xcassets dossiers par glisser & déposer depuis le Finder. De même pour les icônes et lancer des images. Je n'avais pas à personnaliser les graphiques des noms pour chaque cible.
Dans cette solution, vous n'avez pas de magasin de graphiques à l'extérieur de l'actif des dossiers.
Que diriez-vous de modifier les actifs de créer une option de réglage.Pour moi,cela a fonctionné.